Die Anleitung zu UDO Release 6 Patchlevel 0 3. Januar 1997 von Dirk Hagedorn Asmecke 1 59846 Sundern Deutschland Internet: DirkHage@aol.com MausNet: Dirk Hagedorn @ MK2 ====================================================================== Inhaltsverzeichnis ====================================================================== 1 Einfuehrung 1.1 Vorwort 1.2 Was kann UDO und was nicht? 1.3 Benoetigen Sie UDO? 1.4 UDOs Entstehungsgeschichte 1.5 Kontaktadresse 1.6 Danksagung 2 Rechtliche Informationen 2.1 Copyright 2.2 Haftungsausschluss 2.3 Warenzeichen 3 Money, money, money 3.1 Shareware 3.2 Was kostet UDO? 3.3 Was kosten Upgrades? 3.4 Registrierung 4 Installation 4.1 Installation der TOS- und GEM-Version 4.2 Installation der DOS-Version 4.3 Installation der Macintosh-Version 4.4 Installation der Unix-Versionen 5 Bedienung 5.1 Kommandozeilenversion 5.2 GEM-Version 5.3 Macintosh-Version 5.4 Windows-Shell 6 Die UDO-Syntax 6.1 Quelltext-Beispiel 6.2 Grundlagen 6.3 Gliederung 6.4 Texthervorhebungen 6.5 Sonderzeichen 6.6 Silbentrennung 6.7 Bilder 6.8 Hypertext-Elemente 6.9 Miszellaneen 7 Tips & Tricks 7.1 Sieben goldene Regeln fuer das Schreiben eines Quelltextes 7.2 Allgemeine Tips & Tricks 7.3 Tips & Tricks zu LaTeX 7.4 Tips & Tricks zum ST-Guide-Format 7.5 Tips & Tricks zum WinHelp-Format Anhang ====== A Wieso, weshalb, warum A.1 Allgemeine Fragen A.2 Fragen zum ASCII-Format A.3 Fragen zum HTML-Format A.4 Fragen zum Manualpage-Format A.5 Fragen zum LaTeX-Format A.6 Fragen zum Linuxdoc-SGML-Format A.7 Fragen zum Pure-C-Help-Format A.8 Fragen zum Rich Text Format A.9 Fragen zum ST-Guide-Format A.10 Fragen zum Texinfo-Format A.11 Fragen zum Turbo-Vision-Help-Format A.12 Fragen zum WinHelp-Format B Bugs C Fehlermeldungen D Dies & das D.1 Fakten, Fakten, Fakten D.2 Entwicklungsumgebung D.3 Erzeugte Dateien E Historie E.1 In letzter Minute E.2 Release 6 E.3 Release 5 E.4 Release 4 E.5 Release 3 F Befehlsindex F.1 A... F.2 B... F.3 C... F.4 D... F.5 E... F.6 F... F.7 G... F.8 H... F.9 I... F.10 L... F.11 M... F.12 N... F.13 O... F.14 P... F.15 R... F.16 S... F.17 T... F.18 U... F.19 V... F.20 W... F.21 X... F.22 *... ====================================================================== Kapitel 1 Einfuehrung ====================================================================== 1.1 Vorwort ============ Willkommen zu UDO! Vor Ihnen liegt (oder flimmert) die wieder einmal ziemlich ueberarbeitete Dokumentation zum ziemlich ueberarbeiteten Programm namens UDO, geschrieben von einem immer noch voellig ueberarbeiteten Autor. UDO ist ein maechtiges und vielseitiges Werkzeug zur Erstellung von Anleitungen oder sonstigen Textdateien, die in einem oder mehreren Formaten benoetigt werden. Trotz der Vielseitigkeit ist UDO leicht zu bedienen und die UDO-Syntax leicht zu erlernen. UDOs Vielseitigkeit drueckt sich dadurch aus, dass diese Anleitung ziemlich umfangreich ist. Dieser Umfang schreckt viele Leute ab, die Anleitung einmal komplett durchzulesen. Genau diese Leute sind es aber spaeter, die mich mit Fragen bombardieren, die diese Anleitung fast alle erklaeren kann. Aus diesem Grunde moechte ich gleich zu Beginn darauf hinweisen, dass Sie UDO nur dann effizient einsetzen koennen, wenn Sie die Anleitung einmal komplett durchlesen/ueberfliegen und mit den mitgelieferten Beispielen ein wenig herumexperimentieren. Nehmen Sie sich daher bitte die eine Stunde Zeit, diese Anleitung vom Anfang bis zum Ende durchzublaettern. Viele Dinge bleiben dann bereits in Ihrem Gedaechtnis haengen. Ausserdem wissen Sie dann spaeter sofort, wo Sie etwas nachschlagen koennen, falls Ihnen der Sinn eines Befehls wieder entfallen ist. Falls Sie dabei Stellen entdecken, in denen Dinge zu kurz, falsch oder missverstaendlich beschrieben worden sind, so teilen Sie mir dies bitte mit. UDO ist "mein Kind" und daher ist die Gefahr gross, dass mir selbstverstaendliche Teile unzureichend erklaert worden sind. Auch Hinweise auf Rechtschreibfehler nehme ich gerne entgegen. Bitte beachten Sie, dass UDO als Shareware vertrieben wird und ich sehr darauf angewiesen bin, dass die Arbeit, die ich in meiner Freizeit in dieses Projekt stecke, honoriert wird. Falls Sie UDO also nutzen moechten, bitte ich Sie, sich fuer UDO auch registrieren zu lassen. In der Hoffnung, dass UDO fuer Sie genau wie fuer mich selbst eine unverzichtbare Hilfe wird und Sie mehr Zeit fuer die wesentlichen Dinge bekommen, Dirk Hagedorn Sundern, den 10. Dezember 1996 1.2 Was kann UDO und was nicht? ================================ UDO wurde urspruenglich entwickelt, um die Erstellung von Anleitungen zu Computerprogrammen oder vergleichbaren Dokumentationen zu vereinfachen, die in mehr als einem Format benoetigt werden. Seit einiger Zeit leistet UDO aber auch gute Dienste, falls man nur ein Format erzeugen will. So ist es fuer Anfaenger sicherlich einfacher, die Syntax von UDO zu begreifen als die von HTML oder LaTeX, denn bei letzteren muss man beispielsweise hoellisch aufpassen, dass man nicht unerlaubte Zeichen im Quelltext einbaut, wogegen UDO auch mit Sonderzeichen klarkommt und diese automatisch an das jeweilige Ausgabeformat anpasst. Sprich, selbst wenn man nur HTML oder nur LaTeX erzeugen will, kann UDO sehr gute Dienste leisten. Bei alledem ist UDO multilingual, d.h. Sie koennen deutsche, englische, franzoesische, italienische und schwedische Texte erzeugen, und UDO wird dabei die jeweils passenden Begriffe fuer "Inhaltsver- zeichnis", "Anhang", "Abbildung" oder "Tabelle" ausgeben oder das Datum im Format der gewaehlten Sprache darstellen. Die Syntax von UDO ist sehr leicht zu erlernen. Zur Erstellung einfacher Dateien muss man lediglich Kenntnis von etwas zehn bis fuenfzehn Befehlen besitzen, also in etwa so viel, wie Sie auch beim Verfassen von HTML- oder LaTeX-Dateien besitzen muessen. Haben Sie einen Quelltext erstellt, so koennen Sie diesen in folgende, alphabetisch sortierten Formate umwandeln: 1. Apple QuickView 2. ASCII 3. HTML (Hypertext Markup Language) 4. LaTeX 2.09, LaTeX2e 5. Linuxdoc-SGML 6. LyX 7. Manualpage 8. NROFF 9. Pure-C-Help 10. RTF (Rich Text Format) 11. Sourcecode (C und Pascal) 12. ST-Guide 13. Texinfo 14. Turbo-Vision-Help 15. Windows-Help Einige Formate sind systemweit austauschbar, einige sind nur auf bestimmten System von Interesse. UDO erzeugt groesstenteils keine `fertigen' Dokumente. In aller Regel muessen die von UDO erzeugten Dateien erst noch durch weitere Programme bearbeitet werden. So muessen Windows-Help-Quelltexte erst noch durch den Hypertext-Compiler HC.EXE bearbeitet werden, RTF- Dateien mit einer Textverarbeitung ausgegeben werden, etc. UDO versucht, dem Verfasser des Textes soviel Arbeit wie moeglich abzunehmen. Neben der reinen Umwandlung bietet UDO daher je nach Aus- gabeformat sinnvolle Nuetzlichkeiten wie o automatische Generierung von Titelseiten, Kopfzeilen, Fussnoten, Inhaltsverzeichnissen, o automatische Kapitelnumerierung, o Tabellensatz, o automatisches Anlegen von Querverweisen bei Hypertext-Formaten, o Unterstuetzung verschiedener Schriftarten, o automatische Umwandlung von Umlauten und sonstigen Sonderzeichen, o umfangreiche Formatierungsmoeglichkeiten mit Erstellung von Aufzaehlungen, Listen, Blocksatz, zentriertem, rechtsbuendigem oder eingeruecktem Text, o automatisches Einbinden von Bildern sowie o automatischen Zeilenumbruch mit halbautomatischer Silbentrennung. UDO hat so seine Staerken und Schwaechen. Die Umwandlung ins ASCII-, ST-Guide-, HTML-, LaTeX- und WinHelp-Format gehoeren - historisch bedingt - sicherlich zu den Staerken dieses Programms. Ausgabeformate Linuxdoc-SGML und LyX werden erst seit kurzer Zeit angeboten und wurden von mir nicht ausreichend getestet; hier gibt es sicherlich noch ein paar Dinge, die demnaechst geaendert werden (muessen). Einige Dinge stehen bei mir und sicherlich auch bei etlichen Benutzern ganz oben auf der Wunschliste. Einige dieser Dinge werden sicherlich bald unterstuetzt, wie z.B. die automatische Erzeugung eines Stich- wortverzeichnisses sowie die Ausgabe eines Abbildungs- und Tabellenverzeichnisses. Die Erstellung von komplexen Dokumenten wie Zeitschriften ist mit UDO nicht moeglich, da z.B. Bilder nicht frei positioniert oder von Text umflossen werden koennen und UDO keinen Spaltensatz erzeugt kann. Zudem besitzt UDO keine eingebaute automatische Silbentrennung. UDO ist nur ein Textkonverter "in eine Richtung". UDO selbst kann beispielsweise keine vorhandenen WinHelp-, LaTeX- oder ST-Guide- Quelltexte in das UDO-Format umwandeln. Bald werden aber zumindest Programme erscheinen, die HTML- oder Linuxdoc-SGML-Dateien ins UDO- Format umwandeln koennen. Zusammenfassend kann gesagt werden, dass UDO folgende Dinge nicht kann und in absehbarer Zukunft auch nicht koennen wird: 1. UDO kann nur das eigene Format in die oben aufgelisteten Formate umwandeln. UDO kann keines dieser Formate in das eigene Format umwandeln. Hierfuer sind Zusatzprogramme noetig, die bald erhaeltlich sein werden. 2. UDO kann keine Binaerformate (z.B. WinWord-Dateien) erzeugen, sondern nur ASCII-Formate, also solche, die man mit einem ueblichen Editor bearbeiten kann. 3. UDO besitzt keine automatische Silbentrennung, sondern bietet nur die Moeglichkeit, Woerter an vom Autor markierten Stellen zu trennen. Auf eine automatische Silbentrennung wird verzichtet, da der ueberwiegende Teil keine Silbentrennung benoetigt und UDO sonst nur groesser, traeger sowie teurer wuerde. 4. UDO kann Bilder und Tabellen nicht von Text umfliessen lassen. UDO kann auch keinen Spaltensatz erzeugen. Dies sind Funktionen, die zum Desktop Publishing gehoeren und in einem Programm wie UDO nichts zu suchen haben. 1.3 Benoetigen Sie UDO? ======================== Falls Sie eine oder mehrere der folgenden Fragen mit Ja beantworten, dann duerfte es sich fuer Sie lohnen, UDO einmal genauer anzusehen. Falls Sie keine Frage mit Ja beantworten sollten, dann duerfte es sehr wahrscheinlich so sein, dass ein Weiterlesen dieser Dokumentation oder der Einsatz von UDO fuer Sie ueberfluessig ist. o Sie haben einen Text mit allgemeinem Inhalt verfasst und moechten diesen auch Personen zugaenglich machen, die nicht das Betriebs- system benutzen, welches Sie selbst einsetzen? o Sie programmieren und benoetigen neben der obligatorischen ASCII-Anleitung noch eine Online-Hilfe oder ein Online-Handbuch in Form einer Hilfedatei fuer Windows, eines ST-Guide/Hyperion- Hypertextes, einer Hilfe-Datei fuer Borlands Turbo-Vision oder einer Hilfedatei bzw. Anleitung im GNU-Info-Format? o Sie programmieren und benoetigen neben der ASCII-Anleitung noch ein gedrucktes Handbuch, welches Sie mit LaTeX oder einer Textverarbeitung, die das Rich Text Format (korrekt!) importieren kann, setzen moechten? o Sie benoetigen nur eine ASCII-Anleitung, moechten sich aber nicht immer selbst um den Zeilenumbruch, die Kapitelnumerierung, Blocksatz und die Erstellung des Inhaltsverzeichnisses kuemmern? o Sie moechten einen Hypertext im World Wide Web anbieten, Sie besitzen aber keinen leistungsfaehigen HTML-Editor, der sich wie UDO um eine automatische Referenzierung, Umlautwandlung oder die kapitelweise Aufteilung des Hypertextes kuemmern kann? o Sie moechten einen Hilfstext fuer ein Windows-Programm anbieten, haben aber keine Lust, den zwanzigfachen Preis fuer ein Tool zu bezahlen, das nur wenig mehr kann als UDO, dafuer aber wesentlich mehr Ressourcen verbraucht und/oder noch Microsofts Word fuer Windows benoetigt? o Sie sind der Autor einer Library fuer Pure-C auf dem Atari und benoetigen eine Beschreibung der Routinen als Onlinehilfe fuer Pure-C und als ST-Guide-Hypertext? Und, konnten Sie eine Frage mit Ja beantworten? Schoen! Ansonsten: Lesen Sie sich die Fragen noch einmal durch. ;-) 1.4 UDOs Entstehungsgeschichte =============================== Irgendwann im Herbst 1994 hatte ich mehrere kleinere Programme geschrieben, fuer die ich je eine ASCII-Anleitung, eine Online-Hilfe und ein gedrucktes Handbuch benoetigte. Ich begann jeweils damit, zunaechst die ASCII-Anleitung zu schreiben, in eine Kopie der ASCII-Anleitung die Hypertextkommandos einzufuegen und schliesslich die ASCII-Anleitung in eine Textverarbeitung zu importieren, um sie neu zu formatieren und auszudrucken. Schnell stellte sich heraus, dass dieser Weg ziemlich muehsam war, denn bei auch nur kleinen Aenderungen mussten diese in gleich drei Dateien durchgefuehrt werden. Bei groesseren Aenderungen musste der ganze manuelle Umwandlungsvorgang erneut durchgefuehrt werden. Nachdem diese Prozedur endlich ein Ende gefunden hatte, schwor ich mir, dass es so einfach nicht weitergehen durfte! Im Januar 1995 kam mir nach ein paar gruendlichen Ueberlegungen die Idee, ein neues Textformat zu entwerfen, welchem ich den Projektnamen "UDO" (als Abkuerzung fuer Universal DOcument) gab. Die Syntax sollte gleichzeitig leicht zu erlernen und flexibel genug sein, und so entschloss ich mich dazu, dass sich die neue Syntax an der von LaTeX orientieren sollte. Parallel dazu wurde das passende Programm entwickelt, welches Textdateien, die in diesem neuen Textformat verfasst wurden, ins ASCII- ST-Guide- und LaTeX-Format umwandeln konnte: UDO war geboren! UDO konnte zu diesem Zeitpunkt noch nicht besonders viel. Das Format enthielt vielleicht gerade einmal 10 Befehle und der Sourcecode war vielleicht 10 KB gross. UDO war damals eigentlich nur ein uebler Hack, aber dennoch leistete es schon sehr gute Dienste und das oben be- schriebene Horrorszenario gehoerte endgueltig der Vergangenheit an. Seit dieser Zeit hat UDO eine grosse Entwicklung durchgemacht: Viele zusaetzliche Formate wurden implementiert, neue Layoutmoeglichkeiten kamen hinzu, UDO wurde auf weitere Betriebssysteme portiert, der Umfang des Sourcecodes und der Dokumentation hat sich mehr als verhundertfacht. UDO hat sich in diesen zwei Jahren zu einem plattformunabhaengigen, aeusserst leistungsfaehigen und sprichwoertlich universellem Werkzeug entwickelt. 1.5 Kontaktadresse =================== Falls Sie sich fuer UDO registrieren lassen moechten, Anmerkungen oder Fragen haben, Anregungen oder Fehler mitteilen moechten, so wenden Sie sich bitte an eine der untenstehenden Adressen. Falls moeglich, versuchen Sie mich per Email zu kontaktieren. Anschrift: Dirk Hagedorn Asmecke 1 59846 Sundern Deutschland Telefon/Fax: +49 2933 77979 MausNet: Dirk Hagedorn @ MK2 (keine Mails > 16 KB) Internet: DirkHage@aol.com World Wide Web: http://members.aol.com/DirkHage/www/index.htm Bankverbindung: Konto 3 561 164 Sparkasse Arnsberg-Sundern Bankleitzahl 466 500 05 1.6 Danksagung =============== Ich moechte mich an dieser Stelle bei folgenden, namentlich sortierten Personen bedanken, ohne deren tatkraeftige Unterstuetzung UDO nie zu dem geworden waere, was es heute ist. Vielen Dank daher an... Denesh Bhabuta fuer den Support in England Alexander Clauss fuer die Erstellung der HP-UX-300/400-Version Dirk Haun, einem der Geburtsvaeter von UDO Patrick Jerchel fuer die Verwaltung der Mailingliste Peter Klasen, der als erster registrierter Benutzer in die Geschichte von UDO eingehen wird Martin Loos fuer die aufwendige Verwaltung der alten Mailingliste Martin Osieka fuer die aufwendige Portierung auf MacOS Rainer Riedl fuer die Erstellung der BeOS-Version Tom Thomason fuer den Support in Schweden Ausserdem moechte mich bei all denjenigen bedanken, die durch ihren unermuedlichen Einsatz dazu beigetragen haben, dass UDO fehlerfreier und leistungsfaehiger denn je ist. ====================================================================== Kapitel 2 Rechtliche Informationen ====================================================================== 2.1 Copyright ============== Das Copyright an UDO und dieser Dokumentation liegen bei Dirk Hagedorn Software, Sundern. UDO ist Shareware und darf in der unregistrierten Version auf beliebige nichtkommerzielle Weise an Dritte weitergegeben werden, wenn alle folgenden Voraussetzungen erfuellt werden: o Das Programm darf nur mit allen zugehoerigen Dateien und in unveraenderter Form weitergegeben werden. o Das Programm darf generell nur kostenlos weitergegeben werden. Der Upload in gebuehrenfreie Mailboxen und auf nichtkommerzielle FTP-Server ist erlaubt und erwuenscht. o Dem Archiv duerfen keine weiteren Dateien hinzugefuegt werden, insbesondere keine Mailboxwerbung und keine Werbung fuer PD- Serien. Die Umbenennung oder das Umpacken des Archivs ist zu unterlassen. o Fuer die Weitergabe auf Disketten im Rahmen einer Public-Domain- Serie duerfen keine Gebuehren verlangt werden, die einen Betrag von 10 DM (exklusive Versandkosten) ueberschreiten. o Die Weitergabe auf CD-ROM ist genau dann gestattet, wenn ich, Dirk Hagedorn, zum Zeitpunkt der Veroeffentlichung dieser CD-ROM ein kostenloses Belegexemplar erhalte und diese CD-ROM nicht nach dem 31. Dezember 1997 veroeffentlich wird. Ich moechte hiermit vermeiden, dass veraltete Versionen in den Umlauf kommen. Sollten Sie diesen Text 1998 oder spaeter lesen, erkundigen Sie sich bitte nach einer aktuellen Version. 2.2 Haftungsausschluss ======================= Trotz sorgfaeltiger Entwicklung und umfangreichen Tests kann keine Gewaehrleistung fuer die einwandfreie Funktion von "UDO" und die Richtigkeit des Inhalts dieser Dokumentation uebernommen werden. Der Autor kann keine Haftung fuer irgendwelche direkten oder indirekten Schaeden - einschliesslich aber nicht beschraenkt auf materielle oder finanzielle - uebernehmen, die durch die Benutzung von "UDO" oder dessen Untauglichkeit fuer einen bestimmten Zweck entstehen. Fuer Hinweise auf Fehler und fuer Verbesserungsvorschlaege ist der Autor dankbar. 2.3 Warenzeichen ================= Innerhalb dieser Dokumentation wird auf Warenzeichen Bezug genommen, die nicht explizit als solche ausgewiesen sind. Aus dem Fehlen einer Kennzeichnung kann nicht geschlossen werden, dass ein Name frei von den Rechten Dritter ist. Atari, TOS und MultiTOS sind Warenzeichen oder eingetragene Warenzei- chen der Atari Corporation. Arial und Times New Roman sind eingetragene Warenzeichen der Monotype Corporation PLC. GEM und GEM Desktop sind Warenzeichen oder eingetragene Warenzeichen von Digital Research. Mac, Macintosh und MacOS sind eingetragene Warenzeichen von Apple Computer Inc. MS-DOS, Windows, Windows 95 und Windows NT sind eingetragene Warenzei- chen der Microsoft Corporation. Unix ist ein eingetragenes Warenzeichen von X/Open Company Ltd. ====================================================================== Kapitel 3 Money, money, money ====================================================================== 3.1 Shareware ============== UDO ist Shareware. Dies bedeutet folgendes: o Sie duerfen UDO genau vier Wochen lang testen! o Texte, die waehrend der Probezeit erstellt wurden, duerfen der Oeffentlichkeit nicht zugaenglich gemacht werden, weder als Quelltext noch in umgewandelter Form! o Nach Ablauf der vier Wochen muessen Sie sich entscheiden, ob Sie UDO kaufen (siehe "Registrierung") oder ob Sie UDO nicht benutzen moechten. Falls Sie UDO nach Ablauf der Testphase nicht kaufen moechten, sind Sie verpflichtet, UDO samt aller zugehoerigen Dateien zu loeschen, denn andernfalls wuerden Sie mit einer Raubkopie arbeiten! Sollte ich wider Erwarten zu wenig Resonanz in Form von Registrierun- gen bekommen, werde ich entweder 1. UDO zur Crippleware machen (etwa mit haesslichen Warteschleifen, begrenzten Dokumentgroessen, vertauschten Buchstaben in der Zieldatei, ...) oder 2. neue Versionen nicht mehr veroeffentlichen und nur noch an registrierte Anwender herausgeben oder 3. die Weiterentwicklung von UDO komplett einstellen. Das sind keine leeren Drohungen, das ist mein Ernst! Ich bin in der Vergangenheit bereits oft genug enttaeuscht worden. Manche moegen angesichts dieser Worte schmunzeln, ich kann darueber gar nicht mehr lachen! Die ersten Auswirkungen unbefriedigender Resonanz aus dem DOS- und Unix-Sektor bekommen Sie nun bereits zu spueren, denn war bis einschliesslich Release 5 nur die Atari-GEM-Version eingeschraenkt, enthalten nun auch die Kommandozeilenversionen auf allen Systemen haessliche Einschraenkungen: 1. UDO erzeugt am Ende jeder Seite einen Hinweis, dass der Text mit einer unregistrierten Version erstellt wurde. 2. Der Schalter !use_about_udo wird fuer alle Ausgabeformate automatisch gesetzt. Nach erfolgter Registrierung erhaelt man einen Schluessel, mit dem man diese Einschraenkungen aufheben kann. 3.2 Was kostet UDO? ==================== Sie koennen mir glauben, dass ich mir lange den Kopf darueber zerbrochen habe, wieviel Geld ich fuer dieses Programm verlangen kann. Daher bitte ich Sie, diesen Abschnitt bis zum Ende durchzulesen. Ich moechte den Preis nicht verraten, den ich eigentlich fuer UDO verlangen muesste, da dieser einfach ueberhalb der Grenze liegen wuerde, den heutzutage der Durchschnittsbenutzer bereit ist, fuer Shareware zu bezahlen. Ich denke aber, dass ich mit dem jetzigen Preis ein guten Kompromiss zwischen "Traum und Realitaet" gefunden habe, und hoffe, dass Ihnen UDO dieses Geld wert ist. Die Hoehe der Sharewaregebuehr haengt davon ab, ob Sie UDO im privaten, kommerziellen oder auszubildenden Umfeld einsetzen werden: Der Preis fuer private Benutzer =============================== Der Preis fuer eine rechneruebergreifende Nutzungslizenz von UDO betraegt fuer private Benutzer 50 DM. Als privater Benutzer gilt, wer mit UDO Anleitungen oder sonstige Texte zu Produkten erstellt, deren Verkaufspreis niedriger als 100 DM ist. Dazu zaehlen automatisch alle Autoren, die Programme nur als Freeware, Public Domain oder Shareware (mit einer Sharewaregebuehr kleiner als 100 DM) anbieten. Die Sharewaregebuehr muss von privaten Benutzern lediglich einmalig entrichtet werden. Private Benutzer duerfen nach der Bezahlung UDO gleichzeitig auf verschiedenen eigenen Rechnern einsetzen. Sollten Sie nach erfolgter Registrierung feststellen, dass Sie UDO kommerziell nutzen, obwohl Sie nur die Sharewaregebuehr fuer die Privatnutzung bezahlt haben, so ist die Bezahlung des Differenzbetra- ges zwingend erforderlich! Schueler, Studenten und Arbeitslose koennen die Sharewaregebuehr auch in Raten (2 mal 25 DM) bezahlen. Die Preise fuer kommerzielle Benutzer ===================================== Der Preis fuer eine Einzelplatzlizenz von UDO betraegt 150 DM fuer einen kommerziellen Nutzer. "Einzelplatzlizenz" bedeutet, dass UDO nur auf einem Rechner installiert werden darf. Dieser Rechner darf kein Netzwerkrechner sein. Wird UDO auf mehreren Rechner oder in einem Netzwerk eingesetzt, so muss fuer jeden weiteren Rechner/Arbeitsplatz eine Zusatzlizenz erworben werden. Zusatzlizenzen kosten 50 DM pro Stueck. Es muss gewaehrleistet sein, dass UDO zu einem Zeitpunkt nicht von mehr Personen eingesetzt wird, als Lizenzen erworben wurden. Werden mehr als 20 Lizenzen benoetigt, so biete ich guenstige Rabatte an. Erfragen Sie bitte den Preis fuer die von Ihnen benoetigte Anzahl an Nutzungslizenzen direkt beim Autor. Als kommerzieller Nutzer gilt, wer mit UDO Anleitungen oder sonstige Texte zu einem oder mehreren Produkt(en) erstellt, deren Verkaufspreis 100 DM oder hoeher ist. Als kommerzielle Nutzer gelten auch Gesellschaften, Unternehmen oder sonstige kommerziell ausgerichtete Institutionen, die UDO benutzen, um Texte fuer interne Zwecke zu erstellen. Die Preise fuer Schulen und Universitaeten ========================================== Fuer Schulen, Universitaeten und sonstige ausbildenden Institutionen biete ich Sonderpreise an. Erfragen Sie bzw. eine autorisierte Person bitte den Preis fuer die von Ihnen benoetigte Anzahl an Nutzungslizenzen direkt beim Autor. Hinweise: 1. Alle genannten Preise verstehen sich inklusive der gesetzlich vorgeschriebenen Mehrwertsteuer. 2. Nach Bezahlung der Sharewaregebuehr erhaelt man eine Rechnung mit ausgewiesener Mehrwertsteuer, um die Ausgaben fuer UDO von der Steuer absetzen zu koennen sowie den/die Schluessel, um die Einschraenkungen der Testversion aufheben zu koennen. 3. Wer (wie ich) meint, dass UDO mehr wert ist, der kann auch gerne mehr ueberweisen. Eine letzte Bitte... ==================== Lieber Privatbenutzer, falls Sie UDO ruhigen Gewissens auch am Arbeitsplatz einsetzen wollt, so versuchen Sie doch bitte Ihren EDV- Leiter oder sonstigen Vorgesetzten von UDO zu ueberzeugen und dazu zu bewegen, ebenfalls eine oder mehrere Nutzungslizenzen von UDO zu erwerben. Der geringe Preis von UDO tut nun wirklich keinem Unternehmen weh und kann sogar komplett von der Steuer abgesetzt werden. Mir hingegen hilft jede eingenommene Mark, meine laufenen Kosten fuer Telefon und Literatur zu decken. Und die sind aufgrund des Umfangs dieses Projekts nicht gerade gering. 3.3 Was kosten Upgrades? ========================= Upgrades von einer alten auf die aktuelle Release sind generell kostenpflichtig! Die Hoehe der Upgradegebuehren werden bei jeder Release neu festgelegt. Die folgenden Gebuehren zeigen die Upgradegebuehren pro Nutzungslizenz fuer private und kommerzielle Nutzung sowie die Nutzung im ausbildenden Bereich: von auf | Privat | Gewerblich | Ausbildung --------------------------+--------+------------+------------ Release 3 Release 6 | 15 DM | 50/10 DM | -- Release 4 Release 6 | 10 DM | 30/10 DM | -- Rel. 5 (1996) Release 6 | 0 DM | 0 DM | 0 DM Rel. 5 (1997) Release 6 | 10 DM | 50/10 DM | 50/10 DM Wer Release 5 noch 1996 regsitriert hat, fuer den ist das Upgrade auf Release 6 kostenlos. Die neuen Schluessel werden auf Anfrage (am besten per Email) verschickt. Wer Release 5 nach dem 1. Januar 1997 registriert hat, der wird mit den Upgradegebuehren konfrontiert, die in der Tabelle in der Zeile stehen, die mit "Rel.5 (1997)" markiert ist. Die Betraege fuer gewerbliche Benutzer und fuer den ausbildenden Bereich geben die Upgradegebuehren fuer Erstlizenzen (links) und Zusatzlizenzen (rechts) an. 3.4 Registrierung ================== Die Sharewaregebuehr bzw. Upgradegebuehr, deren Hoehe Sie im Kapitel "Was kostet UDO?" ermitteln koennen, kann man mir folgendermassen zukommen lassen: 1. Durch Zusendung eines Verrechnungsschecks an folgende Adresse: Dirk Hagedorn Postfach 8017 59846 Sundern Deutschland Dies ist die von mir am liebsten gesehene Bezahlungsweise, da sie am unkompliziertesten und sichersten ist. 2. Durch Ueberweisung auf mein Konto. Geben Sie dabei bitte moeglichst Ihre komplette Anschrift oder Email-Adresse auf dem Ueberweisungstraeger und "UDO" als Stichwort an, damit ich die Ueberweisung korrekt zuordnen kann! Zusaetzlich sollte man eine Postkarte oder eine E-Mail an mich schicken, anhand derer man mich informiert, dass man die Ueberweisung vorgenommen hat und anhand derer ich sicher Ihre Anschrift, die zur Erzeugung des Schluessels benoetigt wird, erkennen kann. Meine Bankverbindung lautet: Dirk Hagedorn Konto 3 561 164 Sparkasse Arnsberg-Sundern Bankleitzahl 466 500 05 Es kommt leider oft vor, dass ich eine Ueberweisung nicht zuordnen kann, da die Absenderangaben fehlen. Bitte denken Sie also daran, mir eine kleine Notiz ueber die getaetigte Ueberweisung zukommen zu lassen. Nur so kommen Sie schnell in den Besitz Ihres Schluessel. 3. Durch Zusendung von Bargeld, am besten per Einschreiben mit Rueckschein, an obige Adresse. Bitte geben Sie in jedem Fall Ihre Adresse und das/die System(e) an, auf denen Sie UDO einsetzen moechten! Nachdem die Sharewaregebuehr bzw. Upgradegebuehr eingetroffen ist, erhaelt man von mir eine Quittung, um den Kauf von UDO steuerlich absetzen zu koennen, sowie einen persoenlichen Schluessel, mit dem die Einschraenkungen von UDO aufgehoben werden koennen. Um Ihnen und mir den Registrierungsvorgang zu erleichtern, finden Sie im UDO-Archiv je ein Bestellformular fuer private und kommerzielle Benutzer, welches Sie mir ausgefuellt per Email oder Briefpost zusenden sollten. Leistungen fuer registrierte Benutzer ------------------------------------- Neue Releases von UDO erscheinen maximal zwei- bis dreimal pro Jahr. Registrierte Benutzer hingegen haben die Moeglichkeit, staendig mit Zwischenversionen (neudeutsch: Updates) zu arbeiten. Da UDO fuer mehrere Systeme verfuegbar ist und mir einfach die Zeit fehlt, bei kleinen Aenderungen neue Distributionen fuer alle Systeme zu erstellen, erscheint eine neue Release erst dann, wenn die Aenderungen so zahlreich geworden sind, dass es sich lohnt. Die Updates, die in der Regel zweiwoechentlich erscheinen, beinhalten Bugfixes, neue Moeglichkeiten oder neue Ausgabeformate. Auch werden in Updates Wuensche von registrierten Benutzern schnellstmoeglich eingebaut, sofern sie sich realisieren lassen. Registrierte Benutzer koennen sich die Updates per Modem, FTP oder einfach per Einsendung einer Diskette samt adressiertem und mit 2 DM frankierten Rueckumschlag beschaffen. Selbstverstaendlich bekommen registrierte Benutzer auch kostenlosen Support per eMail. Fragen registrierter Benutzer werde ich so ausfuehrlich beantworten wie moeglich. Und wenn man es schafft, mich telefonisch zu erreichen, dann kann man mir natuerlich auch Loecher in den Bauch fragen und die passenden Antworten sofort erhalten. ====================================================================== Kapitel 4 Installation ====================================================================== 4.1 Installation der TOS- und GEM-Version ========================================== Zur Installation von UDO auf einem Atari-(Kompatiblen-)Rechner kopieren Sie einfach alle Dateien in ein beliebiges Verzeichnis, welches sinnigerweise "UDO" genannt werden sollte. Die GEM-Version sollte man im verwendeten Desktop - ich empfehle, Gemini, Thing oder Ease zu benutzen - als Anwendung fuer Dateien mit der Endung `*.u*' anmelden. Falls Sie das TTP bevorzugen und mit einem Kommandozeileninterpreter (z.B. mit der Mupfel von Stefan Eissing) arbeiten, so kopieren oder verschieben Sie `udo.ttp' in eines der in $PATH angegebenen Verzeich- nisse (z.B. `\usr\bin'). Falls Sie den ST-Guide installiert haben, so sollten Sie `udo6ger.hyp' und `udo6ger.ref' in Ihr Verzeichnis kopieren oder verschieben, in dem Sie auch alle anderen Hypertexte aufbewahren. Nur dann koennen auch andere Hypertexte oder Programme (z.B. ein Editor) auf den UDO- Hypertext zugreifen. 4.2 Installation der DOS-Version ================================= Fuer UDO benoetigen Sie mindestens einen 386er Prozessor. UDO laeuft nicht auf Rechnern mit einem 286er Prozessor oder noch aelteren Typen (es werden auch auf Anfrage keine Versionen fuer diese "Dinosaurier" erstellt). Falls im UDO-Archiv ein Programm oder Batch namens SETUP oder INSTALL enthalten ist, so starten Sie diesen bitte zunaechst und folgen Sie dessen Anweisungen. Falls die Installation aus irgendwelchen Gruenden fehlschlagen sollte, so lesen Sie hier weiter. Hat es nicht funktioniert? Ach, noch gar nicht probiert? Lobenswert, dass Sie erst einmal alles lesen wollen. ;-) Leider ist die Installation der DOS-Version nicht ganz trivial. Aehm, eigentlich doch, aber die Vergangenheit hat gezeigt, dass dennoch Probleme auftauchen koennen, obwohl die Installation wirklich simpel und eigentlich voellig unproblematisch ist. Falls Sie noch nie etwas von RSX oder EMXRT gehoert haben, so lesen Sie bitte auf jeden Fall die beiden folgenden Kapitel aufmerksam durch. Falls UDO bei Ihnen dann immer noch nicht korrekt laufen sollte, dann haben Sie etwas falsch gemacht oder ich habe die Installation immer noch nicht penibel genug beschrieben. Falls Ihnen RSX und EMXRT bereits ein Begriff sein sollte, da Sie z.B. bereits andere Software (z.B. emTeX oder GNU-Utilities) benutzen, die diese beiden "Treiber" benutzen, dann koennen Sie sich das folgende Kapitel sparen. 4.2.1 Installation von RSX und EMXRT ------------------------------------- Sie haben also noch nie etwas von RSX oder EMXRT gehoert. Das ist nicht schlimm, Sie brauchen sich dafuer nicht schaemen. Sollten Sie allerdings nach dem Durchlesen dieses Kapitels immer noch nicht wissen, was RSX und EMXRT sind oder wofuer sie benoetigt werden, ja, dann sollten Sie sich schaemen. Und falls RSX- oder EMX-Insider hier irgendwelchen von mir verzapften Schwachsinn lesen sollten, dann sollte ich mich schaemen. Na denn, los geht's... UDO wurde fuer DOS mit dem GNU-C-Compiler (kurz: GCC) compiliert, genauer gesagt mit der von Eberhard Mattes portieren Version, dem EMX-GCC. Der GCC kommt urspruenglich aus der Unix-Welt, in der seit Jahrzehnten mit 32 Bit gearbeitet wird. Der EMX-GCC erzeugt ebenfalls 32-Bit-Programme und demnach ist UDO ebenfalls ein 32-Bit-Programm. Tja, und da haben wir das Problem, denn 32-Bit-Programme koennen ohne Tricks normalerweise nicht unter DOS gestartet werden. Fuer diese Tricks sind nun EMXRT und RSX zustaendig. Diese beiden "Treiber" kuemmern sich darum, dass UDO ausreichend grosse Speicherbe- reiche von DOS anfordern kann. Da unter DOS und Windows verschiedene Tricks angewendet werden muessen, gibt es zwei verschiedene "Treiber": EMXRT fuer DOS und OS/2 sowie RSX fuer Windows. Beachten Sie daher folgendes: o Um UDO nur in einer DOS-Box von Windows 3.11/95 zu benutzen, dazu wird nur RSX benoetigt. RSX von Rainer Schnitker ist ein DPMI- Server fuer Programme, die mit EMX-GCC oder DJGPP compiliert wurden. o Um UDO unter OS/2 oder nur unter DOS (d.h. ohne laufendes Windows) zu benutzen, wird nur EMXRT benoetigt. EMXRT ("emx runtime environment") von Eberhard Mattes wird fuer die Programme benoetigt, die mit dem EMX-GCC programmiert wurden. o Sind weder RSX noch EMXRT installiert, so kann UDO nicht funktio- nieren. Stattdessen wird UDO lediglich eine Fehlermeldung ausgeben. o Die Installation von RSX und/oder EMXRT ist trivial, wirklich. Es muessen lediglich die Archive entpackt und maximal zwei Zeilen in die AUTOEXEC.BAT aufgenommen werden. o RSX und EMXRT sind keine Treiber, die beim Booten resident installiert werden. Sie werden hingegen beim Start eines Programms, dass auf sie angewiesen ist, automatisch nachgeladen und nach der Beendigung des Programms auch wieder entfernt. o Falls Sie nicht im Besitz der beiden Treiber sein sollten, d.h. Sie besitzen nicht eines der Archive EMXRT.ZIP oder DPMIGCC5.ZIP bzw. RSX503RT.ZIP, und die Archive befinden sich nicht im UDO- Archiv, so muessen Sie sich die Archive per FTP, Modem oder per Post beschaffen: FTP: Aktuelle Versionen von EMXRT finden Sie in folgendem Ver- zeichniss: ftp.uni-stuttgart.de/pub/systems/os2/emx-0.9b/ Aktuelle Versionen von RSX finden Sie in folgendem Ver- zeichnis: ftp.uni-bielefeld.de/pub/systems/msdos/misc/ Modem: Im Gruppenprogrammteil "UDO.Pub" der Maus MK2 Iserlohn- Kalthof (+49 2371 944925) finden Sie EMXRT und RSX ebenfalls. Post: Senden Sie mir eine formatierte HD-Diskette samt einem mit 2 DM frankierten und rueckaddressierten Briefumschlag. Kommen wir also zur Installation der beiden Treiber. Sie koennen natuerlich auch nur einen der beiden Treiber installieren, je nachdem ob Sie Ihren Rechner mit DOS, Windows und/oder OS/2 benutzen. Die folgende Beschreibung bespricht die Installation beider Treiber. An erster Stelle muessen Sie natuerlich die Archive entpacken. Doch halt! Sie muessen in jedem Fall die Archive mit Pfaden entpacken, sonst wird spaeter nichts funktionieren. Ich empfehle, die Archive mit UNZIP.EXE zu entpacken. Beim Entpacken des RSX-Archivs wird im aktuellen Verzeichnis das Unterverzeichnis `RSX\' erzeugt, beim Entpacken des EMXRT-Archiv das Verzeichnis `EMX\'. Falls Sie diese Unterverzeichnisse nach dem Entpacken nicht vorfinden sollten, so ist etwas falsch gelaufen. Sie koennen die beiden Verzeichnisse nun an eine beliebige Stelle Ihres Dateisystems verschieben. Ich empfehle, im Wurzelverzeichnis der Bootpartition ein Verzeichnis namens `DRIVERS\' zu erstellen und die Verzeichnisse `RSX\' und `EMX\' dorthin zu verschieben. Oeffnen Sie nun Ihre AUTOEXEC.BAT mit einem beliebigen Editor und fuegen Sie abhaengig davon, ob Sie nur RSX oder nur EMXRT entpackt haben, folgende Zeilen ein: o Nur EMXRT: SET EMX=C:\DRIVERS\EMX\BIN\EMX.EXE o EMXRT und RSX: SET EMX=C:\DRIVERS\EMX\BIN\EMX.EXE SET RSX=C:\DRIVERS\RSX\BIN\RSX.EXE o Nur RSX: SET EMX=C:\DRIVERS\RSX\BIN\RSX.EXE SET RSX=C:\DRIVERS\RSX\BIN\RSX.EXE Falls Sie die beiden Verzeichnisse nicht nach `C:\DRIVERS' verschoben haben, sollten Sie die oben stehenden Pfade entsprechen anpassen. Wie Sie sicherlich bereits wissen, werden Aenderungen an der AUTOEXEC.BAT erst dann aktiviert, wenn Sie Ihren Rechner booten. Bevor Sie dies tun, will ich Ihnen noch kurz erklaeren, welche Veraenderungen Sie nun genau an Ihrer Konfiguration durchgefuehrt haben: Sie haben ein paar zusaetzliche Dateien auf Ihrem Laufwerk sowie nach dem Booten zwei neue Umgebungsvariablen. Nicht mehr und nicht weniger. Booten Sie also nun Rechner. 4.2.2 Installation von UDO386.EXE ---------------------------------- Kommen wir nun zum einfacheren Teil der Installation von UDO. Die Kurzfassung lautet: Archiv mit Pfaden auspacken, das UDO-Verzeichnis in der AUTOEXEC.BAT dem PATH hinzufuegen und neu booten. Aber auch hier erklaere ich die Installation noch einmal Schritt fuer Schritt: 1. Entpacken Sie das UDO-Archiv mit Pfaden. Falls kein Verzeichnis namens `UDO\' erzeugt wird, dann haben Sie den Packer falsch aufgerufen. Andernfalls verschieben Sie das Verzeichnis `UDO\' an eine beliebige Stelle Ihres Dateisystems. Die folgenden Erlaeuterungen gehen davon aus, dass Sie das Verzeichnis ins Wurzelverzeichnis verschieben. 2. Nun muessen Sie noch dafuer sorgen, dass DOS das Programm findet. Dazu koennen Sie folgendermassen vorgehen: (a) Oeffnen Sie die AUTOEXEC.BAT mit einem beliebigen ASCII- Editor und fuegen Sie folgende Zeile ein: SET PATH=%PATH%;C:\UDO\BIN Das fuehrt dazu, dass DOS und Windows auch in diesem Ver- zeichnis nach ausfuehrbaren Programmen suchen, jedoch erst nach einem Neustart des Rechners. (b) Falls Sie dies nicht moechten, so koennen Sie die Dateien aus `C:\UDO\BIN' auch in eines der Verzeichnisse verschieben, die in PATH in der AUTOEXEC.BAT angegeben sind. In diesem Fall muessen Sie Ihren Rechner nicht neu booten. 4.3 Installation der Macintosh-Version ======================================= Nach dem Entpacken des Archivs, welches die Macintosh-Version von UDO enthaelt, kann UDO an eine beliebige Stelle im Dateisystem verschoben werden (ueblicherweise in den Programme Ordner). UDO liegt als FAT-Binary vor, d.h. es ist sowohl auf 68K- als auch auf PowerPC-Rechner lauffaehig. Bei Platzmangel im Dateisystem kann UDO mit einem entsprechenden Programm auf eine native Version verkleinert werden. Unabhaengig davon ist die Groesse zur Laufzeit minimal. Hat man die Dokumentation zu UDO als Hypertext UDO6GER.HYP vorliegen, kann diese aus UDO heraus angezeigt werden, wenn man das Programm Hyperion besitzt, das Hypertexte in diesem Format auf dem Macintosh anzeigen kann. UDO6GER.HYP muss sich dazu im Guides-Ordner von Hyperion befinden. 4.4 Installation der Unix-Versionen ==================================== Nach Entpacken des Archivs kopieren Sie das Binary aus `bin/' in das Verzeichnis `/usr/local/bin' oder in eines der Verzeichnisse Ihres $PATH's. Kopieren Sie dann die UDO-Manualpage `udo.1' nach `/usr/man/man1/'. Um sich die Dokumentation von UDO mittels GNU-Info ansehen zu koennen, sollten Sie die Quelltexte der Dokumentation ins Texinfo-Format umwandeln, mit Makeinfo bearbeiten und die erhaltenen Dateien in das Verzeichnis kopieren ($INFOPATH), in dem sich die anderen Info-Dateien befinden, sofern sich in der UDO-Distribution noch keine Info-Dateien befinden. Die Datei `dir' muss dort dann noch angepasst werden, indem Sie auf die UDO-Dokumentation verweisen. Desweiteren empfiehlt sich das Anlegen von Shellscripten oder Aliasen, um nicht immer alle Optionen angeben zu muessen. Das folgende Script, welches man `'u2tex`' benennen sollte, ruft UDO mit den passenden Optionen auf. #!bin/sh udo --tex -o ! $* Fuer die anderen Formate koennen aehnliche Scripte angelegt werden. In der Distribution sollten Sie diese Scripte bereits vorfinden. Ein Hinweis fuer Linuxdoc-SGML-Benutzer: Zumindest in meiner Linuxdoc-SGML-Version fehlen ein paar Entities. Werfen Sie daher kurz einen Blick in die FAQ in der Mitte dieser Anleitung, falls Linuxdoc- SGML Fehlermeldungen erzeugen sollte. ====================================================================== Kapitel 5 Bedienung ====================================================================== In diesem Kapitel werden Sie erfahren, welche Parameter Sie der Kom- mandozeilenversion uebergeben muessen bzw. wie Sie die Version(en) mit grafischer Oberflaeche nutzen koennen. 5.1 Kommandozeilenversion ========================== Die Kommandozeilenversionen fuer die verschiedenen Betriebssysteme lassen sich alle identisch bedienen (was kein Wunder ist, da alle mit demselben Sourcecode compiliert wurden). Die Bedienung der Kommandozeilenversion wird nun im typischen Manualpage-Stil beschrieben: Name ==== udo - Dateien vom UDO-Format in andere Formate umwandeln Synopsis ======== udo [-adDghHilmnpqrstvwWxy] Quelldatei udo [-adDghHilmnpqrstvwWxy] -o Zieldatei Quelldatei Beschreibung ============ UDO wandelt Dateien vom UDO-Format wahlweise ins Apple-QuickView-, ASCII-, HTML-, Texinfo-, Linuxdoc-SGML-, Manualpage-, Pure-C-Help- Quelltext-, Rich Text-, ST-Guide-Quelltext-, LaTeX-, Turbo-Vision- Help- oder WinHelp-Quelltext-Format um. In der ersten Form erfolgen Ausgaben auf die Standardausgabe (stdout), Fehlermeldungen werden auf die Standardfehlerausgabe (stderr) ausgege- ben. In der zweiten Form werden Ausgaben in die Zieldatei geschrieben, Fehlermeldungen in eine Protokolldatei mit der Endung *.ul*. Die Optionen muessen einzeln uebergeben werden: -al wird nicht als -a -l interpretiert! Der Name der Quelldatei muss als letzter Parameter uebergeben werden. Optionen ======== -a, --ascii Die Quelldatei wird ins ASCII-Format umgewandelt. -D symbol Setzen des Symbols `symbol', welches sich im Quelltext mit dem Befehl !ifset abfragen laesst. -g, --helptag Die Quelldatei wird ins HP-Helptag-SGML-Format umgewandelt. -h, --html Die Quelldatei wird ins HTML-Format umgewandelt. -H, --hold UDO wartet am Programmende auf einen Tastendruck -i, --texinfo Die Quelldatei wird ins GNU-Texinfo-Format umgewandelt. --lyx Die Quelldatei wird ins LyX-Format umgewandelt. -l, --no-logfile UDO legt (bei gleichzeitiger Verwendung von -o) keine Protokolldatei an. -m, --man Die Quelldatei wird ins Manualpage-Format umgewandelt. -n, --nroff Die Quelldatei wird ins Nroff-Format umgewandelt. -o F, --outfile F UDO schreibt seine Ausgaben in die Datei namens "F". -p, --pchelp Die Quelldatei wird ins Pure-C-Help-Quelltextfor- mat umgewandelt. -q, --quiet Die Ausgabe von Statusmeldungen wird unterdrueckt. -r, --rtf Die Quelldatei wird ins Rich-Text-Format umgewandelt. -s, --stg Die Quelldatei wird ins ST-Guide-Format umgewandelt. -t, --tex Die Quelldatei wird ins LaTeX-Format umgewandelt. -v, --vision Die Quelldatei wird ins Turbo-Vision-Help-Format umgewandelt. -w, --win Die Quelldatei wird ins WinHelp-Quelltextformat umgewandelt. -W, --no-warnings UDO gibt keine Warnungen sondern nur Fehler aus. -x, --linuxdoc Die Quelldatei wird ins Linuxdoc-SGML-Format umgewandelt. -y, --no-hypfile UDO legt (bei gleichzeitiger Verwendung von -o) keine Datei mit Trennvorschlaegen an. --help Ausgabe einer Hilfsseite, die diese Optionen erklaert. --test Bei zusaetzlicher Angabe dieser Option, wird keine Ausgabedatei erzeugt, sondern nur ein Logfile und ggf. die Datei mit den Rohlingen fuer die Trennvorschlaege. --tree Wird diese Option benutzt, so legt UDO in einer Datei mit der Endung .ut? eine baumartige Ueber- sicht der benutzten Dateien an. Bei intensiver Benutzung des Befehl !include sieht man dann, welche Datei andere Dateien nachladen. --verbose Bei der Konvertierung werden zusaetzlich Informa- tionen ueber die gerade bearbeitete Datei und das gerade bearbeitete Kapitel ausgegeben. --version Ausgabe der Version von UDO. Beispiele ========= udo file.u Umwandeln der Datei `file.u' ins ASCII-Format (default) und Ausgabe auf die Standardausgabe. Fehlermeldungen werden auf die Standardfehlerausgabe ausgegeben. udo --tex -o output.tex file.u Umwandeln der Datei `file.u' ins LaTeX-Format, Ausgaben werden in die Datei `output.tex' geschrieben, Fehlermeldungen werden in der Datei `output.ult' protokolliert. udo -s -y -l -o ! file.u Umwandeln der Datei `file.u' ins St-Guide-Quelltextformat. Ausgaben erfolgen in die Datei `file.stg'. Es werden keine Protokolldatei und keine Datei mit Trennvorschlaegen angelegt. Environment =========== HOME Im Homeverzeichnis wird nach der Datei udo.ini gesucht, falls UDOPATH nicht existiert. LANG Legt die zu benutzende Landessprache fuer Fehlermeldun- gen fest, wenn weder LC_ALL noch LC_MESSAGES existiert. LC_ALL Wenn diese Environmentvariable auf `german' gesetzt ist, benutzt UDO deutschsprachige Meldungen. Fuer andere Werte werden englischsprachige Meldungen benutzt. Existiert diese Variable nicht, wird stattdessen LC_MESSAGES ueberprueft. LC_MESSAGES Siehe LC_ALL. Wenn auch diese Variable nicht existiert, wird stattdessen LANG benutzt. UDOPATH In diesem Verzeichnis sucht UDO nach der Datei udo.ini. Falls UDOPATH nicht existiert, wird stattdessen in $HOME gesucht. Exit Status =========== 0 Alles in Ordnung. >0 Es ist ein Fehler aufgetreten. Autor ===== Copyright (c) 1995, 1996, 1997 by Dirk Hagedorn (Dirk Hagedorn @ MK2, DirkHage@aol.com) 5.2 GEM-Version ================ Die GEM-Version erlaubt es, bequem mit der Maus Zielformat, Quell- und Zieldatei sowie einige Umwandlungsoptionen zu setzen. Darueber hinaus koennen weitere Programme wie Editoren, Hypertextcompiler und/oder Anzeigeprogramme fuer jedes Zielformat angemeldet und direkt aus der GEM-Version gestartet werden. Die GEM-Version unterstuetzt das VA-Protokoll, Iconification und Drag & Drop. Sie laeuft unter jedem AES, sprich unter TOS, MultiTOS, Geneva, MagiC (Mac/PC) sowie STonX. Waehrend der Umwandlung kann man im Hauptdialog den Umwandlungsvorgang verfolgen. Dies ist jedoch aufgrund der vielen AES-Aufrufe eine zeitaufwendige Angelegenheit. Generell kann ich sagen, dass UDO in der GEM-Version wesentlich langsamer laeuft als die TTP-Version. Bei grossen Dokumentationen sollte man den Quelltext daher mit der TTP- Version uebersetzen. Die Bedienung der GEM-Version ist in weiten Teilen selbst erklaerend. 5.2.1 GEM-Hauptdialog ---------------------- Im Hauptdialog sehen Sie ein paar Buttons und eine Menuezeile. Im Hauptdialog waehlen Sie die Quelldatei und Zieldatei aus, Sie bestimmen hier das Zielformat und Sie koennen hier die Umwandlung der Quelldatei starten. Die Eintraege der Menuezeile rufen weitere Dialoge auf bzw. sind groesstenteils selbsterklaerend. Lediglich zwei Menueeintraege sollten hier erklaert werden: Ziel/Programm starten: In der GEM-Version koennen Sie fuer jedes Format ein Programm anmelden, welches die Zieldatei weiterverarbeitet. So koennen ST- Guide-Quelltexte direkt aus der GEM-Version in einen Hypertext umgewandelt werden, es koennen LaTeX-Quellen in ein DVI-File uebersetzt werden, oder Sie koennen sich die erzeugten HTML-Dateien gleich mit CAB ansehen. Der Phantasie sind wenig Grenzen gesetzt. Ziel/ST-Guide: Wird dieser Menueeintrag aufgerufen, so ruft UDO den ST-Guide auf und teilt diesem mit, er moege doch bitte den soeben erzeugten Hypertext (Name der Zieldatei mit der Endung `.hyp)' anzeigen. 5.2.2 GEM-Dialog `Einstellungen' --------------------------------- Nach Auswahl des Menueeintrags "Optionen, Einstellungen" oeffnet sich dieser Dialog. Die Bedeutung der in diesem Dialog enthaltenen Buttons wird hier erklaert. o Zieldatei: - Anpassen: Ist dieser Button selektiert, so passt die GEM- Version den Namen der Zieldatei bei einem Wechsel des Zielformats im Hauptdialog an. Die Anpassung ist abhaengig davon, welche der folgenden Buttons Sie selektieren: * Komplett: UDO passt uebernimmt den kompletten Dateinamen der Quelldatei und passt nur die Endung an. * Name und Endung: UDO uebernimmt den Namen der Quellda- tei und passt die Endung an das ausgewaehlte Ausgabe- format an. Der Pfad der Zieldatei wird nicht veraendert. * Nur Endung: UDO passt lediglich die Endung der Zieldatei an das jeweilige Ausgabeformat an. Pfad und Name der Zieldatei werden nicht veraendert. - Anzeigen: Ist dieser Buttons selektiert, so wird die nach erfolgter Konvertierung der Zieldatei-Viewer automatisch damit beauftragt, die Zieldatei anzuzeigen. o Nachfrage vor: - Programmende: Ist dieser Button selektiert, so fragt UDO vor dem Programmende noch einmal mittels einer Alertbox nach, ob Sie sich denn nun auch wirklich sicher sind, dieses wunderbare Programm zu verlassen. ;-) - Ueberschreiben: Falls die Zieldatei bereits existiert, so werden Sie noch einmal gefragt, ob die Datei ueberschrieben werden soll, falls dieser Button selektiert ist. o Optionen: - Logfile anlegen: Soll eine Datei erzeugt werden, in der alle Fehlermeldungen protokolliert werden (vergleichbar mit der Kommandozeilen-Option --no-logfile)? - Hyphenfile anlegen: Soll eine Datei erzeugt werden, in der UDO Trennvorschlaege sichert (vergleichbar mit der Kommando- zeilen-Option --no-hypfile)? - Treefile anlegen: Soll eine Datei angelegt werden, in der Sie den logischen Aufbau aus Include-Dateien erkennen koennen (identisch mit der Kommandozeilen-Option -- treefile)? - Statusmeldungen: Soll UDO waehrend der Konvertierung laufen Statusmeldungen ausgeben (vergleichbar mit der Kommandozei- len-Option --verbose)? - Warnungen unterdruecken: Soll UDO im Logfile keine Warnungen ausgeben, sondern nur Fehlermeldungen (identisch mit der Kommandozeilen-Option --no-warnings)? 5.2.3 GEM-Dialog `Symbole' --------------------------- Die GEM-Version ermoeglicht es Ihnen genau wie die Kommandozeilen- Version, bereits vor der eigentlichen Konvertierung Symbole zu setzen. Was bei der Kommandozeilen-Version mit der Option -D erledigt wird, kann hier durch Eingabe und Selektion der zugehoerigen Buttons erreicht werden. Ist ein Eintrag selektiert, so wird er als vordefiniertes Symbol behandelt, sonst nicht. 5.2.4 GEM-Dialog `Externe Programme' ------------------------------------- Dieser Dialog sieht ziemlich verwirrend aus und ich muss gestehen, dass er bald ein wenig ueberarbeitet werden muesste. In diesem Dialog koennen Sie festlegen, mit welchen Programmen Sie die Quell- und Zieldateien bearbeiten und sich ansehen moechten. Ausserdem koennen Sie fuer jedes Zielformat ein spezielles Programm angeben, welches die Zieldatei weiterverarbeiten soll. Im oberen Teil waehlen Sie das Zielformat aus. Im unteren Teil koennen Sie den Pfad des Programms angeben. Falls dieses Programm keine GEM-Applikation ist, sondern ein TOS-Programm, so sollten Sie den entsprechenden Button selektieren. Ist das Programm eine GEM-Applikation, und dieses Programm versteht VA_START, so sollten Sie ebenfalls den entsprechenden Button selektieren. Die letzten beiden Einstellungen sind uebrigens nur von Bedeutung, falls UDO das Starten der Programme uebernimmt. Schliesslich koennen Sie die Parameter angeben, die dem jeweiligen Programm uebergeben werden sollen. Fuer den Namen der Quell- und Zieldatei koennen Sie Platzhal- ter benutzen. Wie diese lauten, dass erfahren Sie ncoh einem Klick auf den Button "Hinweise". So startet UDO Programme o Zunaechst schaut UDO, ob ein AV-Server laeuft. Ist AVSERVER im Environment angegeben oder laufen Gemini oder Thing, so werden diese mittels AV_PROGSTART damit beauftragt, das jeweilige Programm zu starten. o Ist kein AV-Server vorhanden, so start UDO Programme auf eigene Faust. - Laeuft das Programm als Accessory, so werden die Parameter immer per VA_START uebermittelt. - Laeuft das Programm bereits und versteht es VA_START, so verschickt UDO eine VA_START-Meldung an eben dieses Programm. - Andernfalls werden GEM-Programme per shel_write(), TOS- Programme per Pexec() gestartet. 5.3 Macintosh-Version ====================== Die Macintosh-Variante von UDO kommt in einem etwas schlichteren Gewande als die GEM-Variante daher. Alle einstellbaren Optionen sind in einem Dialog zusammengefasst. Hat man beim Start von UDO kein UDO-Dokument uebergeben, waehlt man zunaechst die Eingabedatei ueber den zugehoerigen [Auswaehlen]-Knopf. Ueber das Ausgabeformat-Popup stellt man das gewuenschte Format ein. Sollen die Ausgabedateien nicht im Ordner der Eingabedatei angelegt werden, stellt man dies im zugehoerigen Popup ein und waehlt ueber den zweiten [Auswaehlen]-Knopf einen anderen Ordner aus. Welche Dateien nun konkret von UDO erzeugt werden sollen, kann ueber die Gruppe von Schaltern - deren Beschriftung hoffentlich selbsterklaerend ist - eingestellt werden. Die Einstellung des Ausgabeanzeige-Popups bestimmt die Geschwindigkeit mit der UDO seine Arbeit erledigt bzw. wie kooperativ und mitteilsam es dabei ist. Kooperativ bedeutet in diesem Fall, dass man, waehrend UDO beschaeftigt ist, mit einer anderen Applikation arbeiten kann. Die eigentliche Konvertierung wird ueber den [Ausgeben]-Knopf gestartet. Bei fehlerfreier Ausgabe beendet sich UDO kommentarlos, ansonsten erscheint eine Fehlermeldung mit einem Verweis auf die Protokolldatei. Nachdem man den Shareware-Beitrag ueberwiesen haben, erhaelt man einen Registrierungs-Datensatz zugesandt, den man im entsprechenden Dialog eintraegt. Hat man den Datensatz korrekt eingetragen, sind alle Einschraenkungen der Shareware-Version aufgehoben. Die Dokumentation zu UDO kann jederzeit aus dem Dialog heraus ueber die Hilfetaste bzw. das Hilfemenue aufgerufen werden, falls sie den Hypertext-Viewer Hyperion besitzen und sich der Hypertext UDO.HYP in dessen Guides-Ordner befindet. 5.4 Windows-Shell ================== Die Windows-Shell "UDOSH" dient dazu, die Arbeit mit UDO unter Windows etwas komfortabler zu gestalten. Die Shell ist ein eigenstaendiges Programm, sondern ruft UDO und die Zusatzprogramm lediglich mit den passenden Optionen auf. Die Shell ist daher in einer seperaten Anleitung beschrieben. ====================================================================== Kapitel 6 Die UDO-Syntax ====================================================================== 6.1 Quelltext-Beispiel ======================= Bevor ich ins Detail gehen werde, moechte ich Ihnen an dieser Stelle ein Beispiel eines kompletten Quelltextes zeigen, welches Ihnen auch dazu dienen kann, eigene Quelltexte mit UDO zu erstellen: ----------------------------------------------------------------- ######################################## # @(#) UDO-Beispiel-Quelltext # @(#) Dirk Hagedorn, 08.04.1996 ######################################## !stg @subject "Dokumentation/Utilities" !title Ein !program UDO-Beispiel-Quelltext !date (!today) !author Dirk Hagedorn !use_auto_subtocs [info,html,stg,tvh,win,aqv] !use_auto_subsubtocs [info,html,stg,tvh,win,aqv] !no_effects [asc] !use_justified [asc] ######################################## !begin_document !maketitle !tableofcontents !node Automatische Formatierung UDO sorgt selber fÏr die Formatierung des Quelltextes. Es nÏtzt nichts, zwischen zwei Worte mehrere Leerzeichen einzufÏgen, da UDO selber fÏr die richtigen WortabstÌnde und den Zeilenumbruch sorgt. Auch nÏtzt es nichts, zwischen zwei AbsÌtze mehrere Leerzeilen einzufÏgen. Auch hier greift UDO ein und trennt AbsÌtze durch die ihm richtig erscheinende Anzahl von Leerzeilen. AbsÌtze trennt man durch Leerzeilen oder UDO-Befehle. !node Ein Kapitel Dies ist der Text des Kapitels. Bei Hypertexten erfolgt aufgrund der im Vorspann gesetzten Schalter hier eine Auflistung aller diesem Kapitel zugehÎrigen Abschnitte und Unterabschnitte. !subnode Ein Abschnitt. Dies ist der Text des Abschnitts. Auch hier folgt ein Unterinhaltsverzeichnis. !subsubnode Ein Unterabschnitt. Dies ist der Text des Unterabschnitts. !end_document ----------------------------------------------------------------- Erlaeuterungen -------------- Zu Beginn des Quelltextes ist ein Kommentar angegeben, damit man spaeter noch auf Anhieb erkennen kann, womit sich der Text befasst. Eine Zeile bewertet UDO als Kommantar, wenn das erste Zeichen der Zeile ein `#' ist. Es folgt eine spezielle Zeile fuer den ST-Guide. Hier wird dem ST- Guide mitgeteilt, in welche Rubrik der Hypertext in den Katalog einzuordnen ist. Kennen Sie sich nicht mit dem ST-Guide aus, so verwenden Sie einfach diese Zeile zu Beginn Ihres Quelltextes. Nun werden die Informationen fuer die Titelseite und die Kopfzeilen gesetzt, die bei einigen Formaten automatische erzeugt werden. !title und !program bilden eine Einheit, daher sollte beides zusammengenommen einen Sinn ergeben. Hier wuerde bei einigen Formaten in den Kopfzeilen "Ein UDO-Bespiel-Quelltext" ausgegeben. Bei !date wird der Platzhalter (!today) durch das aktuelle Systemdatum expandiert. Sie koennen natuerlich auch manuell fuer die Angabe des Datums sorgen (z.B. !date 31. Dezember 1999. Im Vorspann werden nun noch einige Schalter gesetzt. Die ersten beiden Schalter sorgen bei Hypertexten, deren Kuerzel Sie in den eckigen Klammern erkennen, fuer die Ausgabe sogenannter `Unterinhaltsverzeich- nisse'. In diesen werden dann alle Abschnitte und Unterabschnitte eines Kapitels bzw. alle Unterabschnitte eines Abschnittes in Form eines Inhaltsverzeichnisses aufgelistet. Dem Leser eines Hypertextes wird es dadurch ermoeglicht, direkt zu den zugehoerigen Abschnitten weiterzuklicken. Theoretische waere es auch moeglich, bei jedem Kapitel durch die Angabe des Befehls !subtoc bzw. bei jedem Abschnitt durch die Angabe des Befehls !subsubtoc diese Unterinhaltsverzeich- nisse einzufuegen. Bei kleineren Texten empfiehlt es sich jedoch, diese Ausgabe zu automatisieren. Der Schalter !no_effects [asc] sorgt fuer die Unterdrueckung der Schriftarten fuer das ASCII-Format. Wuerde dieser Schalter nicht angegeben, so wuerde UDO beim ASCII-Format die in der DFUe gebraeuchlichen Zeichen zur Schriftartumschaltung benutzen. Der Schalter !use_justified [asc,stg] sorgt dafuer, dass UDO beim ASCII- und ST-Guide-Format Blocksatz erzeugt. Das Kommando !begin_document teilt UDO mit, dass nun der Hauptteil des Quelltextes beginnt. Dieses Kommando darf in keinem Quelltext fehlen, da hier unverzichtbare Informationen fuer die Ausgabeformate ausgegeben werden! Zu Anfang geben wir eine Titelseite aus, die aus den Informationen aus der im oberen Teil des Vorspanns gebildet wird. Das Kommando !maketitle sollte - wenn es benutzt wird - direkt hinter !begin_document angegeben werden. UDO erlaubt zwar auch den Einsatz an spaeterer Stelle, jedoch ist dies weder sinnvoll noch unproblematisch. Danach moechten wir, dass UDO ein Inhaltsverzeichnis ausgibt. In diesem sind alle Kapitel, Abschnitte und Unterabschnitte des Quelltextes aufgelistet. Das oben Gesagte gilt auch hier. Wird der Befehl !tableofcontents benutzt, so sollte er direkt hinter !maketitle oder (bei Verzicht auf die Ausgabe der Titelseite) hinter !begin_document angegeben werden. Endlich! Nach dem ganzen Vorgeplenkel beginnen wir mit dem Befehl !node das erste Kapitel. Beachten Sie bitte auch den Inhalt dieses Kapitels, da er weitere Informationen enthaelt. Die folgenden Zeilen demonstrieren, wie man Kapitel, Abschnitte und Unterabschnitte erzeugt. Auch hier sollten Sie einen Blick auf den Text werfen. Unser Quelltext ist nun beendet. Dies zeigen wir UDO mit dem Befehl !end_document an. Auch dieser Befehl darf in keinem Quelltext fehlen! 6.2 Grundlagen =============== 6.2.1 Let's talk about text, Baby! ----------------------------------- UDO erwartet als Quelldatei eine Textdatei, wie sie mit jedem ASCII- Editor erstellt werden kann. Ausser ASCII 9 (Tabulator), ASCII 10 (Linefeed) und ASCII 13 (Carriage Return) sollten keine Steuerzei- chen (d.h. keine Zeichen mit einem ASCII-Wert kleiner als 32) benutzt werden! Eine Zeile darf nicht laenger als 512 Zeichen sein. UDO kuemmert sich bei der Umwandlung selbstaendig um die Formatierung des Textes, sprich um den Zeilenumbruch und die Absatzabstaende: Woerter sind Zeichenfolgen, die durch ein oder mehrere Leerzeichen oder Tabulatoren voneinander getrennt sind. UDO gibt Woerter durch ein Leerzeichen voneinander getrennt aus. Absaetze sind Folgen von Woerter, die durch eine oder mehrere Leerzeilen voneinander getrennt in der Quelldatei auftreten. UDO sorgt selbstaendig fuer den Zeilenumbruch innerhalb von Absaetzen und gibt automatisch die passende Anzahl von Leerzeilen zwischen zwei Absaetzen aus. Quelltexte koennen in verschiedenen Zeichensaetzen erstellt werden. UDO versteht folgende Zeichensaetze: o Atari ST (!code_tos) o Apple Macintosh (!code_mac) o HP Roman 8 (!code_hp8) o IBM-PC (!code_dos) o ISO Latin 1, Windows ANSI (!code_iso) Beim Start der Konvertierung erwartet UDO den aktuellen Systemzeichen- satz. Sollen Quelltexte konvertiert werden, die andere Zeichensaetze benutzen, muss man UDO dies mit den obigen Befehlen kenntlich machen. Mehr zu diesem Thema findet man im Kapitel "Sonderzeichen". 6.2.2 Kommandos, Schalter und Platzhalter ------------------------------------------ Kommandos: Ein UDO-Kommando ist eine mit einem "!" beginnende Zeilenfolge, die am Anfang einer Zeile, eventuell eingerueckt durch Leerzeichen oder Tabs, steht. Ein Kommando bewirkt eine Aktion, wie z.B. die Ausgabe eines Inhaltsverzeichnisses (siehe !tableofcontents). Schalter: Ein UDO-Schalter ist eine mit einem "!" beginnende Zeichenfolge, die die Aktionen von UDO oder einem Kommando beeinflussen. So gibt es z.B. einen Schalter, der bewirkt, dass Bezeichnungen in englischer Spra- che ("Appendix" statt "Anhang") ausgegeben werden (siehe !language). Ein Schalter wird nur erkannt, wenn er am Anfang einer Zeile, eventuell eingerueckt durch Leerzeichen oder Tabs eingerueckt, steht. Platzhalter: Ein Platzhalter ist eine mit "!" beginnende Zeichen- folge, die durch runde Klammern eingefasst ist. Ein Platzhalter wird von UDO durch eine dem Ausgabeformat zugehoerige Zeichenfolge ersetzt (z.B. `(!B)' durch `{\bf'). Platzhalter koennen an jeder beliebigen Stelle einer Zeile stehen. 6.2.3 Kommentare ----------------- Es besteht die Moeglichkeit, in einer Quelldatei Kommentare einzufuegen. Ist das erste Zeichen einer Zeile ein "#", so fasst UDO diese Zeile als Kommentar auf und wertet diese Zeile nicht aus. Das "#" darf nicht eingerueckt sein, muss also das erste Zeichen einer Zeile sein! Keine Regel ohne Ausnahme: Innerhalb einer verbatim- oder raw-Umgebug werden alle Zeilen ausgegeben, also auch die Zeilen, die mit einem "#" beginnen. Innerhalb dieser Umgebung koennen also keine Kommentare benutzt werden. 6.2.4 Vorspann und Hauptteil ----------------------------- Eine Quelldatei besteht immer aus einem Vorspann (auch "Preambel") und einem Hauptteil. Im Vorspann werden grundsaetzliche Informationen ueber den umzuwan- delnden Text selbst deklariert. Desweiteren koennen im Vorspann spezielle Kommandos plaziert werden, die UDO mitteilen, wie er die Quelldatei umwandeln soll (z.B. ob ein kurzes oder ausfuehrliches In- haltsverzeichnis ausgegeben werden soll, ob Begriffe und Datumsangaben in deutscher oder englischer Sprache erfolgen sollen etc.). Zum Vorspann zaehlen alle Zeilen, die vor dem Kommando !begin_document stehen. Im Hauptteil schliesslich befindet sich der nach Kapiteln, Abschnitten und Unterabschnitten strukturierte Inhalt des umzuwandelnden Textes. Der Hauptteil schliesst mit dem Kommando !end_document. 6.2.5 Umgebungen ----------------- Eine Umgebung ist ein Teil der Quelldatei, der speziell behandelt werden soll. Umgebungen werden jeweils mit !begin_ eingeleitet und mit !end_ beendet. Diese Befehle muessen dabei jeweils am Anfang einer Zeile stehen, eventuell eingerueckt durch Leerzeichen und/oder Tabulatoren. Es gibt zahlreiche Umgebungen, die Ihnen die Arbeit erleichtern koennen und die die jeweiligen ausgabeformatspezifischen Besonderheiten beruecksichtigen. Hier eine Uebersicht: appendix-Umgebung: Anhang center-Umgebung: Zentrierungen description-Umgebung: Beschreibungen document-Umgebung: Dokument-Inhalt enumerate-Umgebung: numerierte Aufzaehlungen flushleft-Umgebung: linksbuendiger Text flushright-Umgebung: rechtsbuendiger Text itemize-Umgebung: einfache Aufzaehlungen quote-Umgebung: Einrueckungen raw-Umgebung: spezielle Befehle des Ausgabeformats table-Umgebung: Tabellen verbatim-Umgebung: vorformatierter Text xlist-Umgebung: Listen Wie der Text, der innerhalb dieser Umgebungen steht, behandelt wird, lesen Sie bitte in den zugehoerigen Kapiteln nach. 6.3 Gliederung =============== In diesem Abschnitt werden Sie erfahren, welche Moeglichkeiten Ihnen UDO bietet, um Ihren Text zu strukturieren. 6.3.1 Titelseite ----------------- Durch das Kommando !maketitle erzeugt UDO in der Ausgabedatei eine Titelseite und greift bei der Erzeugung dieser Titelseite auf die In- formationen zurueck, die Sie im Vorspann Ihrer Quelldatei mit den Kommandos der folgenden Tabelle setzen: !title: Der Titel des Textes, z.B. "Die Anleitung zu", "Das Handbuch zu" oder "Die Einfuehrung in". !program: Der Name des im Text behandelten Themas. Hier kann man den beispielsweise den Namen des Programms angeben. !programimage: Eine Grafik, die anstelle der durch !program gesetzten Information ausgegeben werden soll. !version: Versionsinformationen, z.B. "Version 47.11" !date: Das Datum, an dem der Text verfasst oder das Programm geschrieben wurden. !author: Der Name des Autors des vorliegenden Textes. !authorimage: Eine Grafik, die zusaetzlich oberhalb des Namen des Autors ausgegeben werden soll. !street: Die Strasse, in der der Autor wohnt. Optional kann man natuerlich irgendetwas anderes angeben, was dann unterhalb des Namens des Autors ausgegeben wird. !town: Der Wohnort des Autors. Optional kann man natuerlich irgendetwas anderes angeben, was dann unterhalb des Namens des Autors ausgegeben wird. !country: Das land des Autors. Optional kann man natuerlich auch hier irgendetwas anderes angeben, was dann unterhalb des Namens des Autors ausgegeben wird. !email: Die eMail-Adresse(n) des Autors. Dieses Kommando kann bis zu fuenfmal benutzt werden, was sich dann anbietet, wenn Sie ueber mehrere Email-Adressen verfuegen. Diese Kommandos muessen nicht alle angegeben werden. Zumindest eine Titelseiteninformation sollte jedoch gesetzt werden, falls man das Kommando !maketitle verwendet. !maketitle sollte nur direkt hinter !begin_document eingesetzt werden. UDO erlaubt zwar auch die Erzeugung der Titelseite an spaeterer Stelle, allerdings ist dies weder sinnvoll noch unproblematisch. Die Titelseite wird innerhalb des ST-Guide und WinHelp als eigene Seite angelegt. Von dieser aus laesst sich dann zum Inhaltsverzeichnis verzweigen. Dies ist besonders eine grosse Hilfe fuer Benutzer mit kleinen Monitoren, die sonst vor lauter Informationen das Inhaltsver- zeichnis nicht wiederfinden wuerden. Bei TeX hingegen wird aus den angegebenen Informationen eine eigene Titelseite mittels der titlepage-Umgebung erstellt. Um beim ST-Guide eine eigene Titelseite zu erstellen (sei es, falls einem die von UDO erzeugte Titelseite nicht gefaellt), so muss man etwas tiefer in die Trickkiste greifen. Die UDO-Distribution enthaelt einen Beispiel-Quelltext, der zeigt, wie man eigene Titelseiten erstellen kann. 6.3.2 Inhaltsverzeichnisse --------------------------- Durch das Kommando !tableofcontents erzeugt UDO in der Ausgabedatei ein Inhaltsverzeichnis. In das Inhaltsverzeichnis gelangen alle Ueberschriften der Kapitel, Abschnitte und Unterabschnitte. !tableofcontents sollte direkt nach !maketitle bzw. direkt nach !begin_document eingesetzt werden. UDO erlaubt zwar auch die Verwendung an anderer Stelle im Quelltext, jedoch ist dies nicht unproblematisch. Der Umfang dieses Inhaltsverzeichnisses laesst sich durch die Schalter !no_toc_subnodes, !no_toc_subsubnodes und !no_toc_subsubsubnodes beeinflussen. Wird einer dieser Schalter im Vorspann mit dem jeweiligen Kuerzel des betroffenen Ausgabeformats angegeben, so sorgt UDO dafuer, dass ein entsprechend eingeschraenktes Inhaltsverzeichnis ausgegeben wird. Neben !tableofcontents gibt es die Befehle !subtoc, !subsubtoc und !subsubsubtoc, mit denen Sie alle einem Kapitel zugehoerigen Abschnitte bzw. alle einem Abschnitt zugehoerigen Unterabschnitte etc. in der Form eines kleinen Inhaltsverzeichnisses angeben koennen. Sinn und Zweck dieser sogenannten "Unterinhaltsverzeichnisse" ist es, dem Leser eines Hypertextformates (ST-Guide, Pure-C-Help, HTML, WinHelp) das direkte Weiterlesen zu ermoeglichen. Besonders beim Einsatz von !no_toc_subnodes oder der verwandten Schalter empfiehlt sich der Gebrauch dieser Inhaltsverzeichnisse. Die Ausgabe dieser Unterinhaltsverzeichnisse kann man auch automati- sieren, indem man im Vorspann die Schalter !use_auto_subtocs, !use_auto_subsubsubtocs und !use_auto_subsubtocs verwendet. Dann werden von UDO bei jedem Kapitel und Abschnitt automatisch Unterin- haltsverzeichnisse angelegt, in denen man den Inhalt eines Kapitels oder Abschnitts erkennen kann. Jedoch kann es sein, dass Sie gerne im ganzen Text genau diese Unter- inhaltsverzeichnisse erzeugt haben moechten, bei einigen Kapiteln jedoch lieber darauf verzichten wuerden. Fuer diesen Zweck gibt es die Befehle !ignore_subtoc, !ignore_subsubtoc und !ignore_subsubsubtoc. Taucht in einem Kapitel !ignore_subtoc auf, wird in diesem Kapitel kein Unterinhaltsverzeichnis ausgegeben. Analog gilt dies fuer Abschnitte und !ignore_subsubtoc. Zusammenfassung der Befehle und Schalter ---------------------------------------- !tableofcontents: Ausgabe des Inhaltsverzeichnisses auf einer eigenen Seite !toc: Ausgabe des Inhaltsverzeichnisse im Text !subtoc: Ausgabe aller Abschnitte eines Kapitels !subsubtoc: Ausgabe aller Unterabschnitte eines Abschnitts !subsubsubtoc: Ausgabe aller Paragraphen eines Unterabschnitts !no_toc_subnodes: Im Inhaltsverzeichnis nur die Kapitel auflisten. !no_toc_subsubnodes: Im Inhaltsverzeichnis nur die Kapitel und Abschnitte auflisten. !no_toc_subsubsubnodes: Im Inhaltsverzeichnis nur die Kapitel, Abschnitte und Unterabschnitte auflisten. !use_auto_subtocs: Bei jedem Kapitel automatisch alle zugehoerigen Abschnitte auflisten !use_auto_subsubtocs: Bei jedem Abschnitt automatisch alle zugehoerigen Unterabschnitte auflisten !use_auto_subsubsubtocs: Bei jedem Unterabschnitt alle zugehoerigen Paragraphen auflisten !ignore_subtoc: Im aktuellen Kapitel nicht die zugehoerigen Abschnitte auflisten !ignore_subsubtoc: Im aktuellen Abschnitt nicht die zugehoerigen Unterabschnitte auflisten !ignore_subsubsubtoc: Im aktuellen Unterabschnitt nicht die zugehoerigen Paragraphen auflisten Hinweise: 1. Bei der Ausgabe in HTML erfolgt die Ausgabe der Titelseite und des Inhaltsverzeichnisses in die Datei, deren Name Sie UDO in der Kommandozeile uebergeben. 2. Bei der Ausgabe ins Rich Text Format wird kein Inhaltsverzeichnis ausgegeben! Dieses sollten Sie durch entsprechende Funktionen Ihrer bevorzugten Textverarbeitung, mit der Sie das RTF-File weiterbearbeiten, erzeugen. 6.3.3 Gliederungsebenen ------------------------ UDO bietet 4 Gliederungsebenen an, die im Folgenden als Kapitel, Abschnitte, Unterabschnitte und Paragraphen bezeichnet werden. Durch das Kommando !node setzen Sie den Anfang fuer ein neues Kapitel und uebergeben zugleich die Kapitelueberschrift. Genauso funktionieren die Kommandos !subnode fuer einen Abschnitt !subsubnode fuer einen Unterabschnitt und !subsubsubnode fuer einen Paragraph. Da Bilder oft mehr sagen als tausend Worte, hier eine kleines Beispiel. Die (hier inhaltsleere) Befehlsfolge... !node Ein Kapitel !subnode Ein Abschnitt !subsubnode Ein Unterabschnitt !subsubsubnode Ein Paragraph !node Ein neues Kapitel ...stellt UDO im Inhaltsverzeichnis folgendermassen dar: 1 Ein Kapitel 1.1 Ein Abschnitt 1.1.1 Ein Unterabschnitt 1.1.1.1 Ein Paragraph 2 Ein neues Kapitel WinHelp und ST-Guide bieten die Moeglichkeit, Texte auch in kleinen Dialogen, sogenannten Popups darzustellen. Moechten Sie, dass ein Kapitel, Abschnitt oder Unterabschnitt in einem Popup dargestellt wird, so benutzen Sie hierfuer die Befehle o !pnode fuer Popup-Kapitel, o !psubnode fuer Popup-Abschnitte, o !psubsubnode fuer Popup-Unterabschnitte und o !psubsubsubnode fuer Popup-Paragraphen Sie koennen auch Kapitel erstellen, die nicht in Inhaltsverzeichnissen aufgefuehrt werden. Dazu benutzen Sie die Befehle o !node* fuer Kapitel, o !subnode* fuer Abschnitte, o !subsubnode* fuer Unterabschnitte, o !subsubsubnode* fuer Paragraphen o !pnode* fuer Popup-Kapitel, o !psubnode* fuer Popup-Abschnitte, o !psubsubnode* fuer Popup-Unterabschnitte und o !psubsubsubnode* fuer Popup-Paragraphen. Hinweise: 1. Kapitel, die nicht in Inhaltsverzeichnissen erscheinen, werden auch referenziert, werden aber nicht numeriert. 2. UDO numeriert Kapitel automatisch. Falls man auf die Angabe dieser Nummern verzichten moechte, so sollte man den Schalter !no_numbers im Vorspann setzen. 6.3.4 Anhang ------------- UDO kann auch einen(!) Anhang verwalten. Der Anhang steht innerhalb einer appendix-Umgebung, will meinen der Anhang wird durch das Kommando !begin_appendix begonnen und mit !end_appendix beendet. Kapitel, die im Anhang stehen, werden mit Grossbuchstaben gekennzeich- net; Abschnitte und Unterabschnitte werden auch hier durchnumeriert. Auch hier zur Verdeutlichung ein kleines Beispiel: !node Ein Kapitel auÞerhalb des Anhangs !begin_appendix !node Ein Kapitel !subnode Ein Abschnitt !subsubnode Ein Unterabschnitt !subsubsubnode Ein Paragraph !end_appendix Im Inhaltsverzeichnis werden Sie dann folgendes lesen koennen: 5 Ein Kapitel auÞerhalb des Anhangs Anhang A Ein Kapitel A.1 Ein Abschnitt A.1.1 Ein Unterabschnitt A.1.1.1 Ein Paragraph Hinweise: 1. Der Anhang sollte ganz am Ende des Quelltextes stehen, sprich !end_appendix sollte das vorletzte Kommando vor !end_document sein. Nach dem Ende des Anhangs sollte man keine weiteren Kapitel angeben, da die Kapitelnumerierung von UDO dann fuerchterlich durcheinandergeraten koennte. 2. Aufgrund der Tatsache, dass UDO die Kapitel des Anhangs mit Buchstaben numeriert, sollte man im Anhang nicht mehr als 26 Kapitel benutzen. 6.4 Texthervorhebungen ======================= In diesem Abschnitt werden Sie erfahren, mit welchen Kommandos und Platzhaltern Sie Ihren Text formatieren koennen. UDO ermoeglicht die Zentrierung, links- und rechtsbuendige Ausrichtung sowie die Einrueckung von Textpassagen, bietet verschiedene Aufzaehlungsumgebungen sowie eine Umgebung fuer Klartext. Darueber hinaus stehen selbstverstaendlich verschiedene Texteffekte sowie die Moeglichkeit, Fussnoten direkt im Text anzugeben, zur Verfuegung. 6.4.1 Aufzaehlungen -------------------- Mit der itemize-Umgebung lassen sich auf einfache Art und Weise Aufzaehlungen erstellen, bei denen die Aufzaehlungspunkte ("Items") durch Punkte und Striche gekennzeichnet werden. Eine itemize-Umgebung wird mit !begin_itemize eingeleitet und mit !end_itemize beendet. Die einzelnen Aufzaehlungspunkte werden jeweils mit dem Kommando !item gekennzeichnet. Die Befehle zum Einleiten oder Beenden der Umgebung bzw. zum Einleiten eines Aufzaehlungspunktes muessen am Zeilenanfang stehen, eventuell eingerueckt durch Leerzeichen oder Tabulatoren. Die itemize-Umgebung kann mehrfach verschachtelt benutzt werden und laesst sich auch mit anderen Umgebungen kombinieren. Aus diesem kurzen Beispiel... !begin_itemize !item Dies ist der erste AufzÌhlungspunkt. !item Dies ist der zweite AufzÌhlungspunkt, dessen Absatz etwas lÌnger ist und bei dem man erkennen kann, wie die AufzÌhlung formatiert wird. Dies ist der zweite Absatz des zweiten Punktes, der passend eingerÏckt wird. !item Dies ist der letzte AufzÌhlungspunkt. !end_itemize ... wird: o Dies ist der erste Aufzaehlungspunkt. o Dies ist der zweite Aufzaehlungspunkt, dessen Absatz etwas laenger ist und bei dem man erkennen kann, wie die Aufzaehlung formatiert wird. Dies ist der zweite Absatz des zweiten Punktes, der passend eingerueckt wird. o Dies ist der letzte Aufzaehlungspunkt. Und aus diesem kleinen Beispiel, in dem die itemize-Umgebung verschachtelt benutzt wird,... !begin_itemize !item Dies ist Punkt 1 der ÌuÞeren itemize-Umgebung. !item Dies ist Punkt 2 der ÌuÞeren itemize-Umgebung. !begin_itemize !item Dies ist Punkt 1 der inneren Umgebung. !item Dies ist Punkt 2 der inneren Umgebung. !end_itemize !item Dies ist Punkt 3 der ÌuÞeren itemize-Umgebung. !end_itemize ...erhaelt man o Dies ist Punkt 1 der aeusseren itemize-Umgebung. o Dies ist Punkt 2 der aeusseren itemize-Umgebung. - Dies ist Punkt 1 der inneren Umgebung. - Dies ist Punkt 2 der inneren Umgebung. o Dies ist Punkt 3 der aeusseren itemize-Umgebung. UDO gibt nach jedem Item eine Leerzeile aus, um die Items voneinander abzuheben. Dies ist jedoch nicht immer erwuenscht, besonders dann nicht, wenn die Items nur wenig Text enthalten und die gesamte Aufzaehlung dadurch unschoen auseinandergezogen wuerde. Um nun Aufzaehlungen "komprimiert" auszugeben, koennen Sie den Schalter !short direkt hinter dem Befehl !begin_itemize angeben. Dies bewirkt, dass die zusaetzlichen Zwischenraeume in dieser nicht ausgegeben werden. Zusaetzlich wird die Unterdrueckung der Ausgabe der Zwischenraeume an innere Umgebungen vererbt. Es folgen zwei kurze Beispiele, die Ihnen zeigen sollen, wie der Schalter !short eingesetzt wird und welche Auswirkungen er hat. Im ersten Beispiel wird auf !short verzichtet, im zweiten Beispiel wird er eingesetzt: Ohne !short... !begin_itemize !item Item 1 !item Item 2 !item Item 3 !end_itemize ... ergibt dies: o Item 1 o Item 2 o Item 3 Mit !short... !begin_itemize !short !item Item 1 !item Item 2 !item Item 3 !end_itemize ... ergibt dies: o Item 1 o Item 2 o Item 3 Falls Sie keinen Unterschied erkennen sollten, so ist es in dem Format, in dem Sie gerade dieses Handbuch lesen, nicht moeglich, die Zwischenraeume zu unterdruecken. Hinweise: 1. Als Markierung fuer die erste Ebene dieser Umgebung wird ein Bullet verwendet, welches in den Systemzeichensaetzen der ver- schiedenen Rechner, auf denen UDO laeuft, jeweils an anderer Stelle definiert ist. 2. Verwendet man im Vorspann den Schalter !no_umlaute, so wird als Markierung fuer die Ebene ein `o' statt des Bullets verwendet. 6.4.2 Numerierungen -------------------- Die enumerate-Umgebung ist ebenso wie die itemize-Umgebung dafuer geeignet, schnell und komfortabel durchnumerierte Aufzaehlungen zu erstellen, bei denen die Aufzaehlungspunkte durch Zahlen oder Buchstaben gekennzeichnet werden. Eine enumerate-Umgebung wird mit !begin_enumerate eingeleitet und mit !end_enumerate beendet. Die einzelnen Aufzaehlungspunkte werden jeweils mit dem Kommando !item gekennzeichnet. Die enumerate-Umgebung ist auch mehrfach schachtelbar und mit anderen Umgebungen kombinierbar. Hier ein kleines, unverschachteltes Beispiel: Aus... UDO stellt folgende AufzÌhlungsumgebungen zur VerfÏgung: !begin_enumerate !item itemize-Umgebung !item enumerate-Umgebung (das ist die Umgebung, die in diesem Abschnitt beschrieben wird) !item description-Umgebung !item xlist-Umgebung !end_enumerate ... wird: UDO stellt folgende Aufzaehlungsumgebungen zur Verfuegung: 1. itemize-Umgebung 2. enumerate-Umgebung (das ist die Umgebung, die in diesem Abschnitt beschrieben wird) 3. description-Umgebung 4. xlist-Umgebung Und aus diesem kleinen Beispiel, in dem die enumerate-Umgebung verschachtelt und mit dem Schalter !short benutzt wird,... !begin_enumerate !short !item Dies ist Punkt 1 der ÌuÞeren enumerate-Umgebung. !item Dies ist Punkt 2 der ÌuÞeren enumerate-Umgebung. !begin_enumerate !item Dies ist Punkt 1 der inneren Umgebung. !item Dies ist Punkt 2 der inneren Umgebung. !end_enumerate !item Dies ist Punkt 3 der ÌuÞeren enumerate-Umgebung. !end_enumerate ...erhaelt man 1. Dies ist Punkt 1 der aeusseren enumerate-Umgebung. 2. Dies ist Punkt 2 der aeusseren enumerate-Umgebung. (a) Dies ist Punkt 1 der inneren Umgebung. (b) Dies ist Punkt 2 der inneren Umgebung. 3. Dies ist Punkt 3 der aeusseren enumerate-Umgebung. Hinweise: 1. Bei den Formaten, die von Hause aus eine vergleichbare Umgebung anbieten (z.B. HTML) werden die Punkte nicht von UDO numeriert. Daher sollte man vorsichtig mit Angaben wie "siehe Punkt 1" oder "vergleiche Punkt b)" sein. 2. Die dritte Ebene dieser Umgebung wird relativ gesehen etwas weiter eingerueckt, da die Numerierung durch roemische Zahlen mehr Platz benoetigt. 3. Bei vielen Punkten sollte man aufpassen, nicht die Grenzen zu ueberschreiten. Wird eine Eben mit Buchstaben numeriert, sollte man nicht mehr als 26 Aufzaehlungspunkte benutzen. 4. Eine ausfuehrliche Erlaeuterung des Schalters !short finden Sie in der Beschreibung zur itemize-Umgebung. 6.4.3 Beschreibungen --------------------- Die description-Umgebung ist dafuer geeignet, eine Beschreibung von mehreren Begriffen zu erzeugen, wobei Begriffe fett dargestellt werden. Ein Aufzaehlungspunkt wird durch !item [] gekennzeichnet, wobei "" in der Aufzaehlung fett dargestellt wird. Die description-Umgebung ist mehrfach schachtelbar und laesst sich auch mit anderen Umgebungen kobinieren. Hier ein kleines, unverschachteltes Beispiel: Aus... UDO stellt folgende AufzÌhlungsumgebungen zur VerfÏgung: !begin_description !item [die itemize-Umgebung] fÏr AufzÌhlungen, !item [die enumerate-Umgebung] fÏr Numerierungen, !item [die description-Umgebung] fÏr Beschreibungen sowie !item [die xlist-Umgebung] fÏr Listen !end_description ... wird: UDO stellt folgende Aufzaehlungsumgebungen zur Verfuegung: die itemize-Umgebung fuer Aufzaehlungen, die enumerate-Umgebung fuer Numerierungen, die description-Umgebung fuer Beschreibungen sowie die xlist-Umgebung fuer Listen Aus diesem Beispiel, in dem die description-Umgebung verschachtelt und mit dem Schalter !short benutzt wird... !begin_description !short !item [Punkt 1] der ÌuÞeren description-Umgebung mit etwas mehr Text, um die Formatierung zu verdeutlichen. !item [Punkt 2] der ÌuÞeren description-Umgebung. !begin_description !item [Punkt 1] der inneren Umgebung. !item [Punkt 2] der inneren Umgebung. !end_description !item [Punkt 3] der ÌuÞeren description-Umgebung. !end_description ...erhaelt man Punkt 1 der aeusseren description-Umgebung mit etwas mehr Text, um die Formatierung zu verdeutlichen. Punkt 2 der aeusseren description-Umgebung. Punkt 1 der inneren Umgebung. Punkt 2 der inneren Umgebung. Punkt 3 der aeusseren description-Umgebung. Hinweise: 1. Wenn der zu beschreibende Text eine schliessende eckige Klammer beinhaltet, so muss man dieser Klammer ein Ausrufezeichen voranstellen, damit UDO erkennt, dass die folgende eckige Klammer auch fett dargestellt werden soll. 2. Der in den eckigen Klammer angegebene Text wird auch in HTML fett ausgegeben, obwohl dies eher untypisch fuer HTML ist. In einer der naechsten Versionen wird man dies aendern koennen. 3. Eine ausfuehrliche Erlaeuterung des Schalters !short finden Sie in der Beschreibung zur itemize-Umgebung. 6.4.4 Listen ------------- Die xlist-Umgebung eignet sich genau wie die description-Umgebung zur Erlaeuterung von Begriffen. Bei dieser Umgebung werden die Beschrei- bungen der Begriffe jedoch alle untereinander aufgefuehrt. Wie weit die Beschreibungen eingerueckt wird, haengt von der Laenge des bei !begin_xlist [] uebergebenen Textes ab. Die beiden eckigen Klammern werden dabei nicht mitgezaehlt. Die Umgebung wird mit !begin_xlist [] eingeleitet und mit !end_xlist beendet. Ein Aufzaehlungsbegriff wird wie bei der description-Umgebung durch !item [] gekennzeichnet. Die Umgebungen koennen mehrfach verschachtelt benutzt werden und lassen sich auch mit anderen Umgebungen kombinieren. Aus... UDO stellt folgende AufzÌhlungsumgebungen zur VerfÏgung: !begin_xlist [description-Umgebung:] !item [itemize-Umgebung:] fÏr AufzÌhlungen !item [enumerate-Umgebung:] fÏr Numerierungen !item [description-Umgebung:] fÏr Beschreibungen !item [xlist-Umgebung:] fÏr Listen (das ist die Umgebung, die in diesem Abschnitt beschrieben wird) !end_xlist ... wird: UDO stellt folgende Aufzaehlungsumgebungen zur Verfuegung: itemize-Umgebung: fuer Aufzaehlungen enumerate-Umgebung: fuer Numerierungen description-Umgebung: fuer Beschreibungen xlist-Umgebung: fuer Listen (das ist die Umgebung, die in diesem Abschnitt beschrieben wird) Der bereits in den vorherigen Kapiteln besprochene Schalter !short laesst sich auch bei den Listen einsetzen. Um eine "komprimierte" Liste zu erzeugen, geben Sie einfach den Schalter am Ende der Zeile an. Auch hier ein Beispiel: !begin_xlist [description:] !short !item [itemize:] AufzÌhlungen !item [enumerate:] Numerierungen !item [description:] Beschreibungen !item [xlist:] Listen !end_xlist ... wird so ausgegeben: itemize: Aufzaehlungen enumerate: Numerierungen description: Beschreibungen xlist: Listen Seit Release 6 gibt es drei weitere Umgebungen, die genauso funktio- nieren wie die hier gezeigte xlist-Umgebung. Bei diesen Umgebungen werden jedoch die Texte, die sich innerhalb der eckigen Klammern befinden, automatisch mit anderen Schriftarten ausgegeben. 1. Bei der blist-Umgebung (bold list) werden die Items fett ausgegeben. Die blist-Umgebung wird mit !begin_blist eingeleitet und mit !end_blist beendet. 2. Bei der ilist-Umgebung (italic list) werden die Items kursiv ausgegeben. Die ilist-Umgebung wird mit !begin_ilist eingeleitet und mit !end_ilist beendet. 3. Bei der tlist-Ugebung (typewritered list) werden die Items nichtproportinal ausgegeben. Die tlist-Umgebung wird mit !begin_tlist eingeleitet und mit !end_tlist beendet. Das folgende Beispiel soll demonstrieren, wie das Ergebnis aussieht. Zunaechst der UDO-Quelltext: !begin_xlist [typewritered:] !item [normal:] Hier steht sinnloser Text. !end_xlist !begin_blist [typewritered:] !item [bold:] Hier steht nochmal sinnloser Text. !end_blist !begin_ilist [typewritered:] !item [italic:] Hier steht auch sinnloser Text. !end_ilist !begin_tlist [typewritered:] !item [typewritered:] Hier steht wieder sinnloser Text. !end_tlist Das Ergebnis sieht dann so aus: normal: Hier steht sinnloser Text. bold: Hier steht nochmal sinnloser Text. italic: Hier steht auch sinnloser Text. typewritered: Hier steht wieder sinnloser Text. Bezueglich dieser Listen-Umgebungen gibt es einige Dinge zu beachten: 1. Wenn der zu beschreibende Text eine schliessende eckige Klammer beinhaltet, so muss man dieser Klammer ein Ausrufezeichen voranstellen, damit UDO erkennt, dass die folgende eckige Klammer noch zum "linken Teil" des Punktes zaehlt. 2. HTML, Linuxdoc-SGML und Texinfo bietet keine direkte Unterstuetzung fuer Listen diesen Typs, daher werden Listen wie Beschreibungen behandelt. Benutzt man jedoch den Schalter !use_xlist im Vorspann, werden diese Listen wie beim ASCII-Format ausgegeben, jedoch dann als vorformatierter Text, 3. UDO kennt nicht die Schriftbreiten der benutzten Fonts fuer WinHelp und RTF. Falls die Einrueckungen zu gross oder zu klein ausfallen, kann man die Tiefe durch die Schalter !rtf_charwidth bzw. !win_charwidth korrigieren. 4. Eine ausfuehrliche Erlaeuterung des Schalters !short finden Sie in der Beschreibung zur itemize-Umgebung. 6.4.5 Zentrieren von Zeilen ---------------------------- Zeilen, die innerhalb einer center-Umgebung stehen, werden in der Ausgabedatei zentriert dargestellt, sofern das jeweilige Ausgabeformat zentrierten Text unterstuetzt. Die center-Umgebung kann innerhalb anderer Umgebungen verwendet werden, auch innerhalb einer anderen center-Umgebung (so sinnlos das auch sein mag). Werden andere Umgebungen innerhalb der center-Umgebung verwendet, dann werden diese wie sonst auch ausgegeben. Erst wenn die center-Umgebung wieder aktiv ist, wird Text zentriert ausgegeben. Falls das folgende kleine Beispiel nicht zentriert wird, liegt das daran, dass das Format der Dokumentation, die Sie gerade lesen, keine Zentrierungen zulaesst. Aus... !begin_center Eine zentrierte Zeile. Ein zentrierter Absatz, der vorher formatiert wird. Die Anleitung zu (!nl) UDO !end_center ...wird: Eine zentrierte Zeile. Ein zentrierter Absatz, der vorher formatiert wird. Die Anleitung zu UDO Wie man sieht, formatiert UDO Absaetze auch hier. Um einen manuellen Zeilenumbruch zu setzen, bedient man sich des Befehls (!nl). 6.4.6 Rechtsbuendiger Text --------------------------- Zeilen, die innerhalb einer flushright-Umgebung stehen, werden in der Ausgabedatei rechtsbuendig dargestellt, sofern das jeweilige Ausgabe- format rechtsbuendigen Text unterstuetzt. Die flushright-Umgebung kann innerhalb anderer Umgebungen verwendet werden, auch innerhalb einer anderen flushright-Umgebung (so sinnlos das auch sein mag). Werden andere Umgebungen innerhalb der flushright-Umgebung verwendet, dann werden diese wie sonst auch ausgegeben. Erst wenn die flush- right-Umgebung wieder aktiv ist, wird Text rechtsbuendig ausgegeben. Falls das folgende kleine Beispiel nicht rechtsbuendig dargestellt wird, so liegt das daran, dass das Format der Dokumentation, die Sie gerade lesen, keinen rechtsbuendigen Text zulaesst. Aus... !begin_flushright Eine rechtsbÏndige Zeile. Ein rechtsbÏndiger Absatz, der vorher formatiert wird. Ein rechtsbÏndiger Absatz mit (!nl) manuellem Zeilenumbruch !end_flushright ...wird: Eine rechtsbuendige Zeile. Ein rechtsbuendiger Absatz, der vorher formatiert wird. Ein rechtsbuendiger Absatz mit manuellem Zeilenumbruch Wie man sieht, formatiert UDO Absaetze auch hier. Um einen manuellen Zeilenumbruch zu setzen, bedient man sich des Befehls (!nl). 6.4.7 Linksbuendiger Text -------------------------- Zeilen, die innerhalb einer flushleft-Umgebung stehen, werden in der Ausgabedatei linksbuendig ohne Blocksatz dargestellt. Die flushleft-Umgebung kann innerhalb anderer Umgebungen verwendet werden, auch innerhalb einer anderen flushleft-Umgebung, so sinnlos das auch sein mag. Werden andere Umgebungen innerhalb der flushleft-Umgebung verwendet, dann werden diese wie sonst auch ausgegeben. Erst wenn die flushleft- Umgebung wieder aktiv ist, wird Text linksbuendig ausgegeben. Die flushleft-Umgebung eignet sich dafuer, Text bei den Formaten linksbuendig auszugeben, die sonst standardmaessig Blocksatz erzeugen. Ein Beispiel: Aus... !begin_flushleft Eine linksbÏndige Zeile. Ein linksbÏndiger Absatz, der ohne Blocksatz formatiert wird. Um dies zu demonstrieren, folgt hier noch dieser ziemlich sinnlose Satz. Ein linksbÏndiger Absatz mit (!nl) manuellem Zeilenumbruch !end_flushleft ...wird: Eine linksbuendige Zeile. Ein linksbuendiger Absatz, der ohne Blocksatz formatiert wird. Um dies zu demonstrieren, folgt hier noch dieser ziemlich sinnlose Satz. Ein linksbuendiger Absatz mit manuellem Zeilenumbruch Wie man sieht, formatiert UDO Absaetze auch hier. Um einen manuellen Zeilenumbruch zu setzen, bedient man sich des Befehls (!nl). 6.4.8 Einruecken von Absaetzen ------------------------------- Die quote-Umgebung dient dazu, Passagen eingerueckt darzustellen. Diese Umgebung wird mit !begin_quote eingeleitet und mit !end_quote beendet. Die quote-Umgebung laesst sich mehrfach ineinander benutzen, man kann Sie auch mit anderen Umgebungen kombinieren. Diese Umgebung eignet sich dazu, Textpassagen deutlicher vom restlichen Text abzuheben. Dieser Effekt wurde auch bei folgendem Beispiel erzielt: !begin_quote Dieser Absatz steht innerhalb einer quote-Umgebung und wird links und rechts eingerÏckt. !end_quote ...wird: Dieser Absatz steht innerhalb einer quote-Umgebung und wird links und rechts eingerueckt. Hinweis: Bei HTML werden die Einrueckungen durch
erzeugt. Netscape und CAB geben solche Absaetze auch eingerueckt aus; Mosaic hingegen rueckt diese Absaetze nicht ein, sondern ermoeglicht lediglich die Zuweisung eines speziellen Fonts. Als Defaulteinstellung wird hier ein kursiver Font benutzt. 6.4.9 Vorformatierter Text --------------------------- UDO sorgt selbstaendig fuer die Formatierung des auzugebenden Textes. Dies ist jedoch nicht immer erwuenscht. Will man beispielsweise Schnippsel eines Sourcecodes darstellen, waere es fatal, wuerde UDO hier eine Formatierung vornehmen. Zur Ausgabe von vorformatiertem Text kann man sich daher der verbatim-Umgebung bedienen, welche mit !begin_verbatim begonnen und mit !end_verbatim beendet wird. Der Text, der innerhalb dieser Umgebung steht, wird nicht besonders behandelt, sprich es wird der Zeilenumbruch exakt uebernommen und es werden keine UDO-Kommandos (bis auf !end_verbatim) bearbeitet. Steht eine verbatim-Umgebung allerdings in einer anderen Umgebung, so wird der vorformatierte Text zusaetzlich eingerueckt. Beachten Sie dazu auch den Hinweis am Ende dieses Abschnitts. Bei der Ausgabe ins LaTeX-Format werden die gleichnamigen Befehle \begin{verbatim} und \end{verbatim} ausgegeben, bei den anderen Formaten wird (falls noetig) ein nichtproportionaler Font eingestellt und Sonderzeichen automatisch angepasst. Tabulatoren, die innerhalb einer verbatim-Umgebung auftauchen, werden von UDO automatisch durch Leerzeichen ersetzt. Durch den Schalter !tabwidth koennen Sie UDO mitteilen, mit welcher Tabulatorbreite der Text geschrieben wurde. Da innerhalb einer verbatim-Umgebung keine UDO-Kommandos und somit auch nicht !include beachtet werden, waere es nicht moeglich, eine externe Datei einzuladen und diese unformatiert darzustellen. Aus diesem Grund bietet UDO den Befehl !vinclude an, der eine Befehlskom- bination aus !begin_verbatim, !include und !end_verbatim darstellt. Falls Sie jedoch Passagen benutzen wollen, die bereits im Ausgabefor- mat geschrieben wurden (z.B. eine mit LaTeX gesetzte Tabelle), so muss man sich der raw-Umgebung bedienen. Hinweise: 1. Da andere Umgebungen im Quelltext eingerueckt werden koennen, erscheint es verlockend, auch eine verbatim-Umgebung im Quelltext passend einzuruecken. Bedenken Sie allerdings, dass fuehrende Leerzeichen bei der Ausgabe des vorformatierten Textes uebernommen werden und dieser dann in der spaeteren Ausgabedatei zuweit rechts stehen wird, falls Sie den Text der verbatim- Umgebung einruecken. 2. Der Unterschied zur raw-Umgebung besteht darin, dass der Text der verbatim-Umgebung 1:1 dargestellt wird. Text der raw-Umgebung wird hingegen 1:1 uebernommen und dient daher der Einbindung spezieller Formatbefehle. 6.4.10 Fussnoten ----------------- Text, der durch (!N) und (!n) eingefasst wird, wird in eine Fussnote umgewandelt, sofern das Ausgabeformat Fussnoten unterstuetzt. Bei den anderen Ausgabeformaten wird (!N) einfach durch " (" und (!n) durch ")" ersetzt; die Fussnote erscheint hier also einfach in Klammern. Wichtig: Vor (!N) sollte kein Leerzeichen stehen, da sonst die Fussnotenmarkierung spaeter in der Ausgabedatei frei im Raum steht und der Bezug weniger klar erkenntlich wird! Unterstuetzt das Ausgabefor- mat keine Fussnoten, gibt UDO vor der oeffnen Klammer zusaetzlich noch das fehlende Leerzeichen aus. Aus... UDO(!N)Universal Document(!n) wird... UDO (Universal Document) Fussnoten werden von folgenden Formaten unterstuetzt: o LaTeX o Linuxdoc-SGML o LyX o Texinfo o RTF Hinweise: 1. Dass UDO bei den Formaten, die keine Fussnoten unterstuetzen, den Fussnotentext einfach in Klammern setzt, ist natuerlich etwas ungluecklich. Besser waere es, UDO wuerde hier die Fussnotentexte sammeln und am Ende eines Kapitels ausgeben. Leider ist die eine recht kniffelige Angelegenheit, die nicht von heute auf morgen geloest werden kann. 2. Denken Sie daran, vor (!N) kein Leerzeichen zu verwenden. 6.4.11 Schriftarten -------------------- UDO ermoeglicht es Ihnen, bereits im Quelltext festzulegen, in welcher Schriftart Worte oder Saetze im Ausgabeformat erscheinen soll. UDO unterstuetzt derzeit fetten, kursiven, unterstrichenen, Klartext sowie Schreibmaschinenschrift. Um fuer eine Textpassage eine passende Schriftart zu setzen, muessen Sie diese mit den zugehoerigen Platzhaltern klammern. Lange Rede, kurzer Sinn, hier der Quelltext, der den oberen Absatz erzeugt hat: UDO unterstÏtzt derzeit (!B)fetten(!b), (!I)kursiven(!i), (!U)unterstrichenen(!u), (!V)Klartext(!v) sowie (!T)Schreibmaschinenschrift(!t). In der folgenden Tabelle koennen Sie ablesen, durch welche Kommandos die Schriftarten im jeweiligen Format erzeugt werden: +------+-------+----------+-------------+------+---------+--------+ | UDO | ASCII | ST-Guide | LaTeX | RTF | WinHelp | HTML | +------+-------+----------+-------------+------+---------+--------+ | (!B) | * | @{B} | {\bf | {\b | {\b | | | (!b) | * | @{b} | } | } | } | | +------+-------+----------+-------------+------+---------+--------+ | (!I) | / | @{I} | {\it | {\i | {\i | | | (!i) | / | @{i} | } | } | } | | +------+-------+----------+-------------+------+---------+--------+ | (!U) | _ | @{U} | {\underline | {\ul | {\ul | | | (!u) | _ | @{u} | } | } | } | | +------+-------+----------+-------------+------+---------+--------+ | (!V) | | | \verb+ | {\f1 | {\f1 |
  |
 | (!v) |       |          | +           | }    | }       | 
| +------+-------+----------+-------------+------+---------+--------+ | (!T) | | | {\tt | {\f1 | {\f1 | | | (!t) | | | } | } | } | | +------+-------+----------+-------------+------+---------+--------+ Wie man sieht, werden bei der Ausgabe ins ASCII-Format die Zeichen zur Einschaltung von Schriftarten benutzt, wie sie in im Usenet ueblich sind. Die Zeichen werden bei der Ermittlung von Zeilenlaengen nicht beruecksichigt. Wenn man bei einem Ausgabeformat keine Schriftarten benutzen moechte, so kann man die Ausgabe der Schriftartbefehle durch die Angabe des Schalter !no_effects unterdruecken. Der Schalter muss dabei zusammen mit dem/den gewuenschten Format(en) im Vorspann angegeben werden. Um z.B. keine Schriftarten beim ASCII- und Manualpage-Format zu benutzen, so benutzt man dafuer !no_effects [asc,man]. Hinweis: Mit Definitionen lassen sich leicht benutzerdefinierte Schriftarten erstellen. Dazu muss man natuerlich Kenntnis der Format- befehle des jeweiligen Formates haben. Im folgenden Beispiel wird gezeigt, wie man die vom ST-Guide unterstuetzte helle Schrift ein- und ausschalten kann: !ifdest [stg] !define G @{G} !define g @{g} !else !define G !define g !endif Normal und (!G)ghosted(!g). 6.4.12 Tabellen ---------------- Seit Release 5 besteht die Moeglichkeit, einfache Tabellen mit UDO setzen zu lassen. Sie koennen festlegen, wie Spalten ausgerichtet werden und wo horizontale oder vertikale Linien in der Tabelle benutzt werden sollen. Um mit UDO Tabellen zu setzen, benoetigen Sie folgende Kommandos: 1. !table_caption 2. !begin_table [...] {!hline} 3. !end_table 4. !hline 5. !! Das Kommando !table_caption legt die Ueberschrift der folgenden Tabelle fest. !table_caption muss vor der table-Umgebung eingesetzt werden, darf also nicht innerhalb dieser Umgebung stehen. Das Kommando !begin_table leitet eine Tabelle ein. Das Ende der Tabelle wird mit !end_table angegeben. Direkt nach !begin_table koennen Sie angeben, wie die Spalten der Tabelle ausgerichtet werden sollen (l=linksbuendig, c=zentriert, r=rechtsbuendig) und vor und nach welchen Spalten vertikale Linien gezogen werden sollen (durch das Symbol "|"). Folgt diesen Angaben noch das Kommando !hline, beginnt die Tabelle mit einer horizontalen Linie. Nachdem Sie das Format der Tabelle angegeben haben, folgt der eigentliche Tabelleninhalt. Jede Tabellenzeile muss auch in einer Textzeile angegeben werden, wobei die einzelnen Zellen durch ein zwei Ausrufezeichen voneinander getrennt werden. Moechten Sie eine horizontale Linie in der Tabelle ausgeben, so benutzen Sie dazu das Kommando !hline. Dieser Befehl muss am Anfang einer Zeile und alleine in dieser Zeile stehen. Falls Sie die obigen Erklaerungen mehr verwirrt haben sollten, als Ihnen den Tabellensatz zu erlaeutern, so sehen sich einfach mal folgendes kleines Beispiel an: !table_caption Tabellen mit UDO !begin_table [|l|c|r|] !hline links !! mitte !! rechts unten links !! unten mitte !! unten rechts !hline !end_table Dieses Beispiel erzeugt folgende Tabelle, die aus zwei Zeilen und drei Spalten besteht, wobei die erste Spalte linksbuendig, die zweite Spalte zentriert und die dritte Spalte rechtsbuendig ausgegeben wird: +-------------+-------------+--------------+ | links | mitte | rechts | | unten links | unten mitte | unten rechts | +-------------+-------------+--------------+ Tabelle 3: Tabellen mit UDO Da vor und nach jeder Spalte ein "|" angegeben ist, werden die Spalten durch vertikale Linien voneinander getrennt. Die Tabelle beginnt mit einer horizontalen Linie, da bereits in der Zeile mit !begin_table ein !hline angegeben wurde. Schliesslich endet die Tabelle mit einer horizontalen Linie, da vor !end_table wiederum ein !hline angegeben wurde. Hier noch ein weiters Beispiel einer Tabelle, die den gleichen Inhalt zeigt, wie die obige Tabelle, aber bei der keine Linien benutzt werden. Dies wird dadurch ermoeglicht, indem man kein "|" und kein !hline verwendet. Das Ergebnis: links mitte rechts unten links unten mitte unten rechts Tabelle 4: Ein weiteres Beispiel UDO bietet einen Schalter an, um die Linien der Tabelle nicht mit den ASCII-Zeichen +, - und | zu erzeugen. Wird im Vorspann der Schalter !use_ansi_tables benutzt, so werden die Linien der Tabelle mit Hilfe der Grafikzeichen aus dem PC-Zeichensatz erzeugt. Auf die Formate WinHelp, RTF, HTML und LateX hat dieser Schalter keinen Einfluss. Hinweise: 1. Tabellen werden immer zentriert ausgegeben. 2. In HTML kann man die Benutzung von Linien nicht frei festlegen, daher werden Tabellen dort immer mit frame=box erzeugt, falls man in der Zeile mit !begin_table den Befehl !hline benutzt. 3. Fuer WinHelp werden die Moeglichkeiten zur Tabellenausgabe ausgeschoepft. Leider ist es hier nicht moeglich, eine Tabelle zentriert auszugeben oder Linien frei zu setzen. Daher werden alle Zellen der Tabelle umrahmt dargestellt, falls man in der Zeile mit !begin_table das Kommando !hline benutzt. Benutzt man es nicht, wird die komplette Tabelle ohne Linien dargestellt. 4. Beim ST-Guide werden die Tabellenlinien durch den Grafikbefehl @line erzeugt. Hier ist es nicht moeglich, mehrere Linien zwischen den Spalten zu erzeugen, wenn man keine ANSI-Tabellen ausgeben laesst. 5. In den Felder der Tabelle sind natuerlich alle sonstigen UDO- Kommandos erlaubt. Sie koennen dort also auch Schriftarten, Quer- verweise, Indizes etc. verwenden. 6.5 Sonderzeichen ================== 6.5.1 Doppelte Anfuehrungszeichen ---------------------------------- Doppelte Anfuehrungszeichen werden bei der Umwandlung durch typogra- phische Anfuehrungszeichen (z.B. "Gaensefuesschen" unten und oben) ersetzt, falls diese vom jeweiligen Format unterstuetzt werden. Werden diese nicht unterstuetzt, so werden die doppelten Anfuehrungszeichen durch einfache ersetzt. In der folgenden ASCII-Simulation wird gezeigt, wie das Ergebnis in spaeter aussehen kann, wenn das jeweilige Ausgabeformat echte Anfuehrungszeichen unterstuetzt. Echte ""GÌnsefÏÞchen"" Echte GÌnsefÏÞchen" " Wenn Sie in der Ausgabedatei doppelte Anfuehrungszeichen sehen moechten, so muessen Sie stattdessen ("")text("") angeben. Hinweise: 1. Die Umwandlung in typographische Anfuehrungszeichen kann man durch den Schalter !no_quotes [ ] im Vorspann ausschalten. 2. Bei der Ausgabe ins Rich Text Format werden spezielle RTF- Kommandos verwendet. Manche Textverarbeitungen wandeln diese Kommandos jedoch nicht in deutsche Anfuehrungszeichen um, sondern in die englischen Versionen. Daran kann UDO leider nichts aendern. 6.5.2 Doppelte Apostrophe -------------------------- Genau wie bei doppelten Anfuehrungszeichen passt UDO auch hier doppelt vorkommende Apostrophe an. Aus... Hier stehen ''doppelte Apostrophe''. ... wird Hier stehen `doppelte Apostrophe'. Wenn Sie in der Ausgabedatei doppelte Apostrophe sehen moechten, so muessen Sie stattdessen ('')text('') angeben. Hinweis: Der Schalter !no_quotes [ ] hat genau wie auf die doppelten Anfuehrungszeichen Einfluss auf die Umsetzung der doppelten Apostrophe. 6.5.3 Feste Leerzeichen ------------------------ Moechten Sie zwischen zwei Woertern ein festes oder mehrere feste Leerzeichen angeben, so benutzen Sie dafuer die Tilde (~). Feste Leerzeichen eignen sich (auch) dafuer, den Zeilenumbruch an der jeweiligen Stelle zu unterbinden. Bei den Dateien, die im ASCII-Format ausgegeben werden und vom zugehoerigen Konverter nicht mehr nachformatiert werden, ersetzt UDO die Tilde durch ein Leerzeichen und achtet selber darauf, wann kein Zeilenumbruch erfolgen darf. Bei den anderen Formaten ersetzt UDO die Tilde durch folgende formatspezifische Zeichenfolgen, die den gleichen Zweck erfuellen: LaTeX: ~ HTML:   RTF: \~ WinHelp: \~ Wenn Sie die Tilde selber ausgeben moechten, so muessen Sie die Zeich- enfolge !~ benutzen. Hinweis: Bei externen Verweisen wird die Tilde nicht in ein festes Leerzeichen umgewandelt, wird also von UDO direkt uebernommen. 6.5.4 Gedankenstriche ---------------------- UDO bietet - wie sollte es auch anders sein - eine Moeglichkeit, Gedankenstriche (wie hier) bereits im Quelltext anzugeben. Gedankenstriche werden von LaTeX, RTF und WinHelp unterstuetzt. Bei den anderen Formaten werden zwei bzw. drei Minuszeichen durch eines ersetzt. Mit --- koennen Sie einen langen, mit -- einen kurzen Gedankenstrich ausgeben. Wenn Sie drei Minuszeichen ausgeben moechten, so muessen Sie im Quelltext (---) benutzen. Wenn Sie zwei Minuszeichen ausgeben moechten, so muessen Sie im Quelltext (--) benutzen. 6.5.5 Umwandlung von 8-bit-Zeichen ----------------------------------- In einem Quelltext koennen Sie, anders als bei LaTeX, HTML, WinHelp oder RTF, auch Zeichen aus dem oberen Teil Ihres Systemzeichensatzes verwenden. Es ist also nicht erforderlich, sich zu ueberlegen, wie denn wohl ein "ss" oder ein "ae" in der Ausgabedatei auszusehen hat; UDO erledigt die Umwandlung fuer Sie automatisch. UDO erwartet Quelltexte mit dem jeweiligen Systemzeichensatz. Nutzen Sie UDO auf einem DOS-kompatiblen Rechner, so erwartet UDO Quelltexte, die mit dem DOS-Zeichensatz geschrieben wurden. Die Atari-Version erwartet Quelltexte mit Zeichen des Atari-Zeichensatzes usw. UDO kann aber auch Quelltexte verarbeiten, die mit systemfremden Zeichensaetzen erstellt wurden. Und um es richtig komfortabel zu machen, koennen Quelltexte sogar aus einem Mischmasch von benutzten Zeichensaetzen bestehen. Sie muessen UDO lediglich mit Befehlen mitteilen, mit welchem Zeichensatz die folgenden Zeilen erstellt wurden. Folgende Befehle stehen zur Verfuegung, in den Klammern sehen Sie die Bezeichnung des jeweiligen Zeichensatzes: !code_dos: IBM-PC, MS-DOS !code_hp8: HP Roman 8 !code_iso: ISO Latin 1, Windows ANSI !code_mac: Apple Macintosh !code_tos: Atari ST Die Anpassung der Sonderzeichen hat jedoch ihre Grenzen. So enthalten alle Zeichensaetze ein paar Zeichen,die in anderen Zeichensaetzen fehlen. So ist die Benutzung der Grafikzeichen des DOS-Zeichensatzes oder der hebraeischen Zeichen des Atari-Zeichensatzes problematisch, da diese zu systemspezifisch sind und in anderen Formaten nicht nachgebildet werden koennen. Auch auf die Verwendung mathematischer Zeichen sollte moeglichst verzichtet werden, da diese zumeist in anderen Zeichensaetzen fehlen. Werden systemfremde Zeichensaetze verarbeitet, sind die Einschraenkungen noch etwas groesser, da UDO intern zunaechst Texte in den ISO-Latin-1-Zeichensatz umwandelt, der als groesster gemeinsamer Nenner angesehen werden kann. Erst dann wird von ISO-Latin-1 in den jeweiligen Systemzeichensatz umgewandelt. Auf diesem Wege koennen im unguenstigen Fall manche Zeichen nicht umgewandelt werden. UDO wird in einem solchen Fall eine Fehlermeldung ausgeben. Sie sollten dann auf die Verwendung dieser Zeichen verzichten. Hinweis: Es kann durchaus sein, dass mir das eine oder andere Zeichen "durch die Lappen" gegangen ist oder Zeichen falsch umgesetzt werden. Sollten Sie auf solche Zeichen stossen, so melden Sie mir dies bitte unverzueglich. Vielen Dank! 6.5.6 Universeller Zeichensatz ------------------------------- Mit den im vorherigen Abschnitt beschriebenen Befehlen ist es moeglich, Quelltexte auch mit 8-Bit-Zeichen systemweit weiterzugeben. Werden Quelltexte jedoch ueber das Internet ausgetauscht, kann es passieren, dass irgendwo auf dem Uebetragungswege 8-Bit-Zeichen umgewandelt oder angepasst werden. Dies waere bei Quelltexten, die mehrere Zeichensaetze verwenden fatal. Um nun den Austausch von Quelltexten auch hier zur ermoeglichen, bietet UDO einen "universellen Zeichensatz" an. Es handelt sich hierbei nicht wirklich um einen Zeichensatz, sondern vielmehr um eine Moeglichkeit, 8-Bit-Zeichen durch Folgen mehrere 7-Bit-Zeichen zu emulieren. Da die noetigen Abfragen und Umwandlungen sehr rechenintensiv sind, muss man UDO mitteilen, dass die folgenden Zeilen "universelle Zeichen" beinhalten. Dies geschieht durch den Einsatz des Schalters !universal_charset. Nach der Angabe von !universal_charset [on] betrachtet UDO jede einzelne Zeile und wandelt enthaltene universelle Zeichen in 8-Bit- Zeichen um. Die folgende Tabelle zeigt, welche Zeichen wie umgewandelt werden: +-------+----------------+-----------------+ | PH | x aus | Beispiel | | (!"x) | aeiosuyAEIOU | (!"a) = ae | | (!'x) | aeiouyAEIOUY | (!'e) = e | | (!`x) | aeiouAEIOU | (!`i) = i | | (!^x) | aeiouAEIOU | (!^o) = o | | (!&x) | ae, oe, AE, OE | (!&AE) = AE | | (! x) | anoANO | (! n) = (~n) | | (!,x) | cC | (!,C) = C | | (!.x) | aA | (!.A) = A | | (!_x) | ao | (!_a) = ù | | (!\x) | oO | (!\O) = O | +-------+----------------+-----------------+ Das deutsche `ss' wird durch den Platzhalter (!"s) erzeugt. Kennt das Zielformat ein Zeichen nicht, so wird das naheliegendste Zeichen benutzt, z.B. `a' statt `a'. 6.6 Silbentrennung =================== UDO bietet fuer das ASCII-, ST-Guide-, Pure-C-Help- und Manualpage- Format eine halbautomatische Silbentrennung. Halbautomatisch bedeutet, dass Sie in einem Quelltext die Stellen markieren muessen, an denen ein Wort getrennt werden darf. Es gibt zwei Moeglichkeiten, diese Trennstellen zu setzen: 1. lokales Setzen durch Trennmarken ("!-") 2. globales Setzen durch das Kommando !hyphen Bei der Umwandlung ins LaTeX-Format werden die angegebenen Trennstel- len durch "\-" ersetzt. LaTeX weiss dann, dass das Wort nur an den Stellen getrennt werden darf. Bei der Umwandlung ins Rich Text, WinHelp- und HTML-Format werden die Trennmarken einfach gefiltert. Falls Sie die Zeichenfolge !- ausgeben moechten, so muessen Sie im Quelltext !/- angeben. 6.6.1 Lokales Setzen von Trennstellen -------------------------------------- Im Quelltext kann man in einem Wort durch "!-" die Stellen markieren, an denen UDO (bzw. LaTeX) das Wort trennen darf. Ein Beispiel: eine halbautomatische Sil!-ben!-tren!-nung. Bei der Umwandlung ins LaTeX-Format werden alle "!-" durch "\-" ersetzt; es wird also "Sil\-ben\-tren\-nung" ausgegeben. Bei der Umwandlung ins ASCII-, ST-Guide-, Pure-C-Help- und Manualpage-Format wird das Wort passend aufgetrennt, falls es nicht mehr komplett in eine Zeile passt (z.B. in "Sil- bentrennung" oder "Silben- trennung"). Bei allen anderen Ausgabeformaten werden die Trennmarken einfach entfernt. 6.6.2 Globales Setzen von Trennstellen --------------------------------------- Trennstellen koennen durch das Kommando !hyphen global gesetzt werden. Global bedeutet, dass Sie die Trennstelle nur einmal im Vorspann des Quelltextes angeben muessen, UDO dann bei der Umwandlung alle Zeilen nach dem zugehoerigen Wort durchsucht und die noetigen Anpassungen durchfuehrt. Sobald in Ihrem Quelltext mehrere problematische Worte (also Worte, die ungetrennt einen haesslichen rechten Flatterrand erzeugen) auftauchen, sollten Sie sich ueberlegen, ob es nicht vielleicht sinnvoller ist, im Vorspann einmal !hyphen zu benutzen. In diesem Beispiel wird davon ausgegangen, dass in Ihrem Quelltext das Wort "Dokumentation" mehrfach auftaucht. Damit Sie nicht bei jedem Wort die Trennstellen lokal setzen muessen, fuegen Sie folgenden Zeile(n) in den Vorspann des Quelltextes ein: !hyphen Do!-ku!-men!-ta!-tio!-nen !hyphen Do!-ku!-men!-ta!-tion In diesem Beispiel wurde zusaetzlich der Trennvorschlag fuer den Plural angegeben, da dieser anders getrennt werden muss. Der Plural muss, wenn er angegeben werden wird, vor dem Singular stehen. Der Grund: UDO speichert alle Trennvorschlaege in einer Liste, die es bei der Umwandlung im FIFO-Prinzip (first in first out) abarbeitet. 6.6.3 Hinweise auf zu kurze Zeilen ----------------------------------- Bei der Umwandlung ins ASCII-, Manualpage-, Pure-C-Help- und ST- Guide-Format kann UDO durch seine halbautmatische Silbentrennung dafuer sorgen, dass im Ausgabetext ein relativ gleichmaessiger rechter Rand erzeugt bzw. beim Blocksatz eine Zeile mit wenig Leerzeichen aufgefuellt wird. Dies ist dann nicht der Fall, wenn manche Zeilen zu kurz geraten. UDO bemaengelt diese Zeilen in der Logdatei und zeigt Ihnen dort auch das Wort, welches durch seine Laenge dazu fuehrte, dass ein ungleichmaessiger rechter Rand erzeugt bzw. die Zeile mit zuviel Leerzeichen aufgefuellt wurde. Versuchen Sie nun, durch Einsetzen von Trennmarken UDO zu erlauben, dieses Wort zu trennen und damit einen gleichmaessigeren rechten Rand zu erzeugen. Hinweis: Durch den Befehl !sloppy werden die Hinweise auf solche kurzen Zeilen ausgeschaltet. Durch den Befehl !fussy lassen sich die Warnungen wieder einschalten. Gerade in der Entwicklungsphase einer Dokumentation interessieren einen die Warnungen eher weniger. Benutzen Sie dann einfach zu Beginn des Dokumentes den Befehl !sloppy, so dass in der Logdatei nur noch die "wichtigen" Dinge zu erkennen sind. Vor der Veroeffentlichung der Dokumentation sollte man dann den Befehl auskommentieren und die Formatierung ueberpruefen. 6.7 Bilder =========== UDO ermoeglicht die Einbindung von Bildern in den Ausgabeformaten ST- Guide, HTML, WinHelp und TeX. Dieses Kapitel soll Ihnen erlaeutern, wie Sie die Einbindung realsieren koennen und welche Kommandos UDO im jeweiligen Ausgabeformat erzeugt. Zur Einbindung von Bilder bedient man sich des Kommandos !image, bei dem man den Dateinamen der einzubindenden Datei (ohne Endung!) angeben muss sowie optional eine Bildunterschrift angeben kann. Um Bilder bei HTML und WinHelp mitten im Text zu plazieren, kann man sich des Platzhalters (!img ...) bedienen. Bei den anderen Ausgabefor- maten ist es hingegen nicht moeglich, Bilder mitten im Text auszugeben. Eine genauere Erklaerung dieses Platzhalters finden Sie im Befehlsindex. Seit Release 6 werden Bilder ungebungsabhaengig positioniert. Wurden Bilder einst immer zentriert ausgegeben, so werden Bilder nun nur noch dann zentriert ausgegeben, wenn der !image-Befehl Teil einer center- Umgebung ist. Bilder koennen also - wie normaler Text auch - linksbuendig, zentriert und rechtsbuendig ausgegeben werden. 6.7.1 *.img & ST-Guide ----------------------- Beispiel: !image tiger Ein Tiger UDO oeffnet die Datei tiger.img und ermittelt die Ausmasse des Bildes, erzeugt in der Ausgabedatei das ST-Guide-Kommando @limage und fuegt dort einen Wert ein, um den das Bild eingerueckt werden soll. Dieser Wert wird ausgehend von der Breite eines Zeichens aus dem Stan- dard-10pt-Systemfont berechnet. Falls wie in diesem Beispiel eine Bildunterschrift angegeben wird, wird diese, versehen mit "(Abbildung x: Ein Tiger)", ebenfalls unter dem Bild ausgegeben. Beachten Sie auch die Hinweise fuer das Lindner-TeX. 6.7.2 *.img & Lindner-TeX -------------------------- Wenn man GEM-Images in ein LaTeX-File einbinden moechte, welches mit dem Linder-TeX weiterverabeitet werden soll, so muss im Vorspann das Kommando !tex_lindner gesetzt werden. Daran erkennt UDO, dass ein spezielles Lindner-TeX-Makro zur Einbindung des Bildes erzeugt werden soll. UDO macht das dem Lindner-TeX beiliegende Zusatzprogramm namens IMGTOTEX ueberfluessig! UDO beinhaltet alle Aufgaben, fuer die sonst IMGTOTEX zustaendig ist, naemlich das Eintragen bestimmter Aufloesungswerte in den Header des jeweiligen GEM-Images. Ein Beispiel: !tex_dpi 100 !image tiger Ein GEM-Image UDO liest zunaechst den Header der Datei tiger.img ein, ermittelt daraus die Ausmasse des Bildes und passt den Header an 100 dpi an, was fuer die spaetere Ausgabe via DVI-Treibern wichtig ist. In der Zieldatei wird nun ein TeX-Makro mit Spezialbefehlen erzeugt, die die Einbindung eines Bildes ermoeglichen. Hinweis: Bei 100 dpi erscheinen Screenshots (jedenfalls auf meinem HP DeskJet 510) im Ausdruck in der Originalgroesse. !tex_dpi kann vor jedem Bild neu gesetzt werden, jedoch sollten das selbe Bild immer in der gleichen Groesse ausgedruckt werden, da der Image-Header jeweils passend veraendert wird. 6.7.3 *.img & CS-TeX/MultiTeX ------------------------------ Wenn man GEM-Images in ein LaTeX-File einbinden moechte, welches mit dem CS-TeX oder MultiTeX weiterverabeitet werden soll, so muss im Vorspann das Kommando !tex_strunk gesetzt werden. Da die Treiber des CS-TeX auch die Spezialbefehle des Lindner-TeX unterstuetzen, werden hier die gleichen Dinge durchgefuehrt wie bei der Umwandlung fuer das Lindner-TeX. 6.7.4 *.msp & emTeX -------------------- Um MSPs in einem emTeX-File einzubinden, muessen Sie im Vorspann den Befehl !tex_emtex angeben sowie die Aufloesung des jeweiligen Ausgabegeraets mit !tex_dpi setzen. Die Einbindung erfolgt gemaess der Beschreibung aus dvidrv.doc vom emTeX. UDO versucht bei der Angabe von "!image tiger Ein Tiger" die Datei tiger.msp zu oeffnen und die Ausmasse auszulesen. Schlaegt dies fehl, wird eine Fehlermeldung ausgegeben und stattdessen versucht, tiger.pcx zu lesen. Im Beispiel wuerde UDO folgendes Makro erzeugen ( und werden dabei durch die Ausmasse des Bildes ersetzt): \begin{figure}[htb] \begin{...} \begin{picture}(,) \put(0,){\special{em:graph tiger.msp}} \end{picture} \end{...} \caption{Ein Tiger} \end{figure} Hinweis: Bei einem HP DeskJet 510, der mit 300 dpi druckt, muessen Sie !tex_dpi 300 benutzen. Den Aufloesungswert koennen Sie fuer jedes Bild neu setzen. 6.7.5 *.pcx & emTeX -------------------- Um PCXe in einem emTeX-File einzubinden, muessen Sie im Vorspann den Befehl !tex_emtex angeben sowie die Aufloesung des jeweiligen Ausgabegeraets mit !tex_dpi setzen. Die Einbindung erfolgt gemaess der Beschreibung aus dvidrv.doc vom emTeX. UDO versucht bei der Angabe von "!image tiger Ein Tiger" die Datei zunaechst die Datei tiger.msp (nicht .pcx!) einzubinden. Erst wenn diese Datei nicht existiert, versucht UDO die Ausmasse der Datei tiger.pcx zu ermitteln und ein entsprechendes emTeX-Makro zu schreiben. Im Beispiel wuerde UDO folgendes Makro erzeugen ( und werden dabei durch die Ausmasse des Bildes ersetzt): \begin{figure}[htb] \begin{...} \begin{picture}(,) \put(0,){\special{em:graph tiger.pcx}} \end{picture} \end{...} \caption{Ein Tiger} \end{figure} Hinweis: Da UDO zunaechst versucht, auf Grafiken im MSP-Format zuzugreifen, erscheint im Logfile spaeter eine Warnung. Diese koennen Sie dann bei der Benutzung von PCX-Grafiken ignorieren. 6.7.6 *.gif & HTML ------------------- UDO kann zur Einbindung von GIFs in eine HTML-Seite entsprechende HTML-Kommandos erzeugen. UDO prueft dabei nicht, ob die angegebene Datei existiert! Anders als bei den anderen Formaten wird der zweite Parameter nicht als Bildunterschrift, sondern als Alternativtext benutzt. Aus dem UDO-Befehl "!image tiger Ein Tiger" wird folgender HTML-Befehl erzeugt:

Ein Tiger


Wird keine Bildunterschrift angegeben, so fehlt die Angabe des Alternativtextes bzw. es wird ein leerer Alternativtext benutzt. Auch hier das Beispiel zur Veranschaulichung: Aus "!image ../gif/tiger" wird


6.7.7 *.jpg & HTML ------------------- Standardmaessig erwartet UDO, dass Sie Grafiken im GIF-Format darstellen moechten (siehe oben). Natuerlich ist es mit UDO aber auch moeglich, JPEG-Grafiken einzubinden. Um UDO die Endung der Grafik mitzuteilen, die Sie fuer das naechste Bild verwenden moechten, koennen Sie sich des Befehl !html_img_suffix bedienen. Falls nun der bereits bekannte Tiger nicht als GIF, sondern als JPEG vorliegt, stellen Sie dem im vorherigen Beispiel gezeigten !image- Befehl folgende Zeile voran: !html_img_suffix jpg Sollte die Grafik nicht tiger.jpg heissen, sondern tiger.jpeg, so muss der Befehl entsprechend so lauten: !html_img_suffix jpeg Beachten Sie, dass die Endung fuer alle folgenden Grafiken gesetzt wird. Falls spaeter wieder ein GIF dargestellt werden soll, so muss die Endung wieder mit !html_img_suffix gif eingestellt werden. 6.7.8 *.bmp & WinHelp ---------------------- UDO kann Befehle zur Einbindung von Windows-Bitmaps in einen Windows- Hilfetext ausgeben. UDO ueberprueft dabei nicht, ob die angegebene Datei existiert! Ein Bild kann mit oder ohne Bildunterschrift eingebunden werden. 1. ohne Bildunterschrift: !image tiger 2. mit Bildunterschrift: !image tiger Ein Tiger UDO erzeugt dann folgenden RTF-Befehle: {\qc \{bmc tiger.bmp\}}\par\pard \par {\qc (Abbildung 1: Ein Tiger)}\par\pard Hinweise: 1. UDO ueberprueft nicht, ob die angegebene Datei existiert. Bei einem falschen Dateinamen erhalten Sie also spaetestens vom HC eine Fehlermeldung. 2. Mit dem Schalter !win_inline_bitmaps werden die Bilder mit anderen Befehlen eingebunden, so dass sie quasi "hardcoded" uebernommen werden. 6.8 Hypertext-Elemente ======================= 6.8.1 Sprungmarken ------------------- Mit dem Befehl !label koennen im Quelltext sogenannte Sprungmarken ("Labels") gesetzt werden. Ein Beispiel fuer ein solches Label: !label Beispiel Bei den Hypertextformaten ST-Guide, HTML, WinHelp und Pure-C-Help werden solche Sprungmarken automatisch referenziert, d.h. es werden von UDO automatisch Querverweise zu diesen Sprungmarken angelegt. Bei WinHelp werden diese Sprungmarken zusaetzlich im Suchen-Dialog angegeben, beim ST-Guide erscheinen sie im Index. Im Beispiel koennte man dann im Hypertext von jedem Wort "Beispiel" an die Stelle gelangen, an der diese Sprungmarke definiert wurde. Die Umsetzung im Detail: HTML: LaTeX: \label{Beispiel} Linuxdoc-SGML: ein Wort LaTeX: ein Wort (siehe \ref{der Verweis}) ST-Guide: @{"ein Wort" link "der Verweis"} WinHelp: {\uldb ein Wort}{\v der_Verweis} Turbo: {ein Wort:der_Verweis} sonst: ein Wort (siehe "der Verweis") Hier nun ein Beispiel, bei dem auf meine Anschrift verwiesen wird. Aus... Wenn Sie sich registrieren lassen mÎchten, so senden Sie (!link [mir] [Anschrift]) eine kurze Nachricht. wird... Wenn Sie sich registrieren lassen moechten, so senden Sie mir (siehe "Kontaktadresse") eine kurze Nachricht. Hinweise: 1. Insgesamt duerfen in einem Absatz 200 Links benutzt werden. Wird diese Zahl ueberschritten, so gibt UDO eine Fehlermeldung aus, dass der Link nicht ersetzt werden konnte. Zur Erinnerung: Absaetze werden durch Leerzeilen getrennt. 2. Bei der Umwandlung ins HTML- oder WinHelp-Format wird ueberprueft, ob der benutzt Verweis vorhanden ist. Ist er es nicht, so gibt UDO eine Fehlermeldung aus. 3. Bei LaTeX kann man nur auf Labels und Aliase, nicht auf Kapitel verweisen. 6.8.2.2 Interne Querverweise mit Bildern Speziell fuer WinHelp und HTML gibt es den (!ilink...)-Befehl, um Verweise mit Darstellung eines Bildes zu erstellen. Dieser Befehl ist eine Kombination aus (!link...) und (!img...) und wird bei den anderen Formaten wie der oben besprochene Link-Befehl fuer interne Querverwei- se behandelt: UDO: (!ilink [img] [Text] [Verweis]) WinHelp: {\uldb \{bmc img.bmp\}}{\v Verweis} HTML: Text sonst: analog zu (!link [Text] [Verweis]) Hinweise: 1. UDO ueberprueft nicht, ob die Grafiken existieren. 2. UDO benutzt als Endung fuer die Grafiken standardmaessig `.gif'. Mit dem Schalter !html_img_suffix kann die Endung jederzeit veraendert werden. 3. Insgesamt duerfen in einem Absatz 200 Links benutzt werden. Wird diese Zahl ueberschritten, so gibt UDO eine Fehlermeldung aus, dass der Link nicht ersetzt werden konnte. Zur Erinnerung: Absaetze werden durch Leerzeilen getrennt. 6.8.2.3 Interne Querverweise auf Seiten Speziell fuer LaTeX gibt es noch den (!plink...)-Befehl, um Bezug auf andere Seiten zu nehmen: UDO: (!plink [Links] [Querverweise]) LaTeX: Links (siehe Seite \pageref{Querverweise}) sonst: Links Hier nun ein Beispiel, bei dem auf die Seite verwiesen wird, auf der Sie meine Anschrift finden. Aus... Wenn Sie sich registrieren lassen mÎchten, so senden Sie (!plink [mir] [Anschrift]) eine kurze Nachricht. wird... Wenn Sie sich registrieren lassen moechten, so senden Sie mir eine kurze Nachricht. Hinweise: 1. Bei LaTeX kann man nur auf Labels, nicht auf Kapitel verweisen. 2. Insgesamt duerfen in einem Absatz 200 Links benutzt werden. Wird diese Zahl ueberschritten, so gibt UDO eine Fehlermeldung aus, dass der Link nicht ersetzt werden konnte. Zur Erinnerung: Absaetze werden durch Leerzeilen getrennt. 6.8.2.4 Externe Querverweise Mit dem (!xlink...)-Befehl koennen Sie Bezug auf Stellen andere Hypertexte oder Homepages nehmen. Der Unterschied zum obigen Befehl besteht darin, dass beim zweiten Parameter bis auf die Tilde keine Sonderzeichen angepasst werden (bei Pfadangaben fatal!) UDO: (!xlink [UDO] [*:\udo.hyp]) ST-Guide: @{"UDO" link "*:\udo.hyp"} UDO: (!xlink [Atari] [http://www.atari.com]) HTML: Atari UDO: (!xlink [UDO] [Titel@d:/winhelp/udo.hlp]) WinHelp: {\uldb UDO}{\v Titel@d:/winhelp/udo.hlp} sonst: UDO bzw. Atari Hinweise: 1. Fuer WinHelp muss man gueltige Topicnamen und Dateinamen angeben. Der HCP akzeptiert in Topicnamen nur Buchstaben, Ziffern und den Underscore. Andere Zeichen werden von UDO angepasst! 2. Fuer den ST-Guide sollte man dem Dateinamen die Zeichen `*:\' voranstellen, so dass der ST-Guide in allen in den fuer ihn ange- gebenen Verzeichnissen aus der in der ST-GUIDE.INF angegebenen Variable namens PATHS nach der Datei sucht. 3. Durch den Schalter !no_xlinks [ ] koennen Sie im Vorspann angeben, bei welchen Formaten externe Verweise umgewandelt werden sollen. Dieser Schalter wird z.B. dann benoetigt, falls man eine Seite mit Verweisen fuer das Internet angelegt hat, die in einem ST-Guide- oder WinHelp-Hypertext keinen Sinn machen wuerden. 6.9 Miszellaneen ================= 6.9.1 Verteilte Dokumente -------------------------- UDO stellt Ihnen die Kommandos !include, !vinclude und !rinclude zur Verfuegung, mit denen Sie die Moeglichkeit erhalten, ein grosses Dokument in mehrere kleine Dateien aufzuteilen oder identische Passagen mehrfach einzubinden. !include kann sowohl im Vorspann als auch im Hauptteil benutzt werden. Dadurch besteht die Moeglichkeit sowohl, Makros und Trennvorschlaege als auch Kapitel in externe Dateien auszulagern. Um den Inhalt von Dateien als Klartext darstellen zu koennen, bedient man sich des Kommandos !vinclude ("verbatim include"). Tip: Das Kommando !vinclude eignet sich sehr gut, um Sourcecodes oder Headerfiles darzustellen. Falls man direkte Befehle fuer ein Format nachladen moechte, so kann man sich des Kommandos !rinclude ("raw include") bedienen. Tip: Dieser Befehl eignet sich im Zusammenhang mit dem !ifdest-Kommando dazu, um z.B. spezielle LaTeX-Tabellen oder HTML-Formulare einzubinden. Diese Dokumentation macht uebrigens intensiven Gebrauch von diesen Moeglichkeiten. Die Datei `udo.u' enthaelt lediglich wichtige Einstel- lungen und etliche !include-Kommandos, jedoch keine einzige Zeile "sichtbaren" Textes. Moegliche Anwendungsgebiete: 1. Bei umfangreichen Texten empfiehlt es sich, die Kapitel in eigenen Dateien zu halten und von einer Hauptdatei mittels !include an passender Stelle einzubinden. Dies hat den Vorteil, dass man durch einfaches Verschieben des !include-Befehls dem Text eine neue Struktur geben zu koennen. 2. Teilt man Texte in mehrere Dateien auf, die von einer Hauptdatei nachgeladen werden, kann dies die Fehlersuche erheblich beschleunigen. Durch auskommentieren der Zeilen, die bereits korrekte Kapitel einladen, kann man sofort sehen, wie UDO das zuletzt bearbeitete Kapitel umwandelt. 3. In Verbindung mit Makros kann man sich standardisierte Texte erstellen, die man fuer mehrere Programmbeschreibungen verwenden kann. Z.B. tauchen in Programmdokumentationen immer wieder die Kapitel auf, die sich mit dem Haftungsausschluss oder den Waren- zeichen anderer Produkte befassen. 4. Beim Schreiben eines Textes kann die Arbeit auf beliebig viele Personen aufgeteilt werden. Jeder Autor kann dann in aller Ruhe seine Texte bearbeiten und austesten. Erst kurz vor Vollendung des Gesamtwerks fasst ein Projektleiter alle Texte zu einem zusammen. UDO wird beispielsweise dazu eingesetzt, ein Online-Computermaga- zin zu erstellen. Der Projektleiter gibt Vorgaben, wie das Layout der einzelnen Artikel auszusehen hat, damit ein einheitliches Erscheinungsbild gewaehrleistet wird. Jedes Projektmitglied schreibt nun seinen Artikel. Ist ein Artikel fertig, wird er dem Projektleiter zur Verfuegung gestellt. Dieser kann nun nach und nach das Magazin komplettieren. 5. Mit !vinclude lassen sich in Verbindung mit !tabwidth sehr leicht Sourcecodes oder Headerfiles darstellen, falls man beispielsweise eine Library oder eine Programmiersprache beschreiben moechte. 6.9.2 Makros ------------- Makros sind benutzerdefinierte Platzhalter, die sich fuer die verschiedensten Dinge eignen. Beim Befehl !macro geben Sie zunaechst den Bezeichner des Makros an, dem sich der Ersetzungstext anschliesst. Letzterer kann auch leer sein. Um im Quelltext spaeter den Inhalt eines Makros ausgeben zu lassen, geben Sie den Bezeichner der Makros mit einem fuehrenden Ausrufezeichen und eingeschlossen in runde Klammern an. Auch hier zunaechst ein paar Beispiele: !macro HTML Hypertext Markup Language !macro UDO (!B)U(!b)niversal (!B)Do(!b)cument !macro TOSG (!T)UDO6GDOS.LZH(!t) !ifdest [html] !macro PICPATH gif/ !else !macro PICPATH img/ !endif [...] Die (!HTML) ... Das (!UDO) Format ... Das Archiv (!DOSG) ... !image (!PICPATH)/tiger Diese Makros koennten dazu benutzt werden, sich laestige Tipparbeit zu sparen oder Aenderungen zu beschleunigen. Ein weiteres Anwendungsgebiet ist das Erstellen von standardisierten Texten, deren Inhalt durch Makros an den jeweiligen Quelltext angepasst wird. Im folgenden Beispiel wird der Programmname in einen Disclaimer eingebaut, der per !include eingebunden wird: [doku.u] !macro PRG Windows95 [disclaim.u] (!PRG) wurde umfangreichen Tests unterzogen. Die Benutzung erfolgt auf eigene Gefahr! Seit UDO Release 6 koennen Makros auch Parameter uebergeben werden. Bei der Erzeugung eines Makros geben Sie dazu mit `(!1)', `(!2)' bis `(!9)' die Position der Parameter an. Um den Makros im Text die Parameter zu uebergeben, setzen Sie diese in eckige Klammern. Hier ein kleines Beispiel, bei dem ein Makro fuer die Ausgabe von gleichzeitig fettem und kursiven Text definiert wird und spaeter mit nur einem Parameter aufgerufen wird: !macro BI (!B)(!I)(!1)(!i)(!b) ... Dieser Text ist (!BI [fett und kursiv]). Die Worte "fett und kursiv" werden bei der Ausgabe dann an die Stelle von (!1) gesetzt. Das Beispiel ist zugegebenermassen nicht gerade gluecklich gewaehlt, da man mit Schriftarten moeglichst sparsam umgehen sollte, zeigt aber hier auf einfache Weise, wie man Makros einsetzen koennte. Hinweise: 1. Bei der Namensvergabe der Makros sollte man moeglichst darauf achten, diese nicht wie bereits existente Befehle oder Platzhal- ter zu benennen. So sollten sie ein Makro nicht "B" oder "nl" benennen, da dann die Umschaltung in Fettschrift ((!B)) oder ein erzwungener Zeilenumbruch nicht mehr funktionieren. 2. Die Benutzung von Makros sollte nicht uebertrieben werden. UDO erlaubt zwar die Benutzung von bis zu 128 Makros, jedoch verlangsamt jedes zusaetzliche Makro die Umwandlung der Quellda- tei, da jede Zeile nach allen Makros durchsucht werden muss. 6.9.3 Definitionen ------------------- Definitionen sind (wie Makros) benutzerdefinierte Platzhalter. Sie koennen dazu dienen, im entgueltigen Text spezielle Kommandos einzubauen. Die Syntax fuer eine Definition lautet !define . Im Gegensatz zu den Makros wird nicht speziell angepasst, d.h. es werden keine Umlaute und andere Sonderzeichen angepasst. Im folgenden Beispiel benutzen wir eine Definition, um nur im HTML- Format ein Wort als Ueberschrift auszugeben: !ifdest [html] !define H1

!define h1

!else !define H1 !define h1 !endif [...] (!H1)Eine Ûberschrift(!h1) Wie Sie sehen, koennen Sie mit diesen Definitionen spezielle Befehle des Ausgabeformates einbauen, die UDO standardmaessig nicht anbietet. In UDO4 gab es mal einen Satz Spezialplatzhalter, die nur fuer LaTeX vorhanden waren. Da diese Platzhalter selten gebraucht wurden, die Umwandlung eines Quelltextes daher zumeist unnoetig bremste, muss man diese Platzhalter nun mit geeigneten Definitionen nachahmen: !ifdest [tex] !define ff "ff !define lb2 \linebreak[2] !define nolb3 \nolinebreak[3] !else !define ff ff !define lb2 !define nolb3 !endif [...] Die Schi(!ff)ahrt LaTeX einen Umbruchstelle (!lb2) vorschlagen. Auch bei den Definitionen koennen Sie Parameter benutzen. Gerade wenn es darum geht, Befehle einiger Formate direkt einzubauen, kann diese Moeglichkeit der hifreich sein. Benutzt werden Definitionen, die Parameter enthalten sollen, wie Makros mit Parametern. Text, der beim Aufruf einer Definition anstelle eines der durchnumerierten Parameter ausgegeben werden soll, ist in eckige Klammern einzufassen. Im obigen Beispiel habe ich Ihnen gezeigt, wie man eine Ueberschrift fuer HTML erzeugen koennte. Benutzt man Parameter, koennte man Ueberschriften wesentlich eleganter erzeugen: !ifdest [html] !define head

(!1)

!else !define head (!1) !endif [...] (!head [Eine Ûberschrift]) Sie sehen, dass Sie mit diesem Befehl einige Moeglichkeiten haben, spezielle Funktionen eines Formates nachzubilden, die UDO standardmaessig nicht zur Verfuegung stellt. Das obige Beispiel fuer LaTeX liesse sich mit einer parametrischen Definition uebrigens viel eleganter loesen: !ifdest [tex] !define lb \linebreak[(!1)] !else !define lb (!2) !endif [...] LaTeX einen Umbruchstelle (!lb [2]) vorschlagen. In diesem Beispiel wird nur ein Parameter an die Definition uebergeben. Trotzdem soll fuer Nicht-LaTeX-Formate der 2. Parameter ausgegeben werden. Sie werden sich vielleicht fragen, warum dies so ist. Nun, bei Nicht-LaTeX-Formaten soll nichts ausgegeben werden. Ein zweiter Parameter is nicht vorhanden, demnach leer, und somit wird `lb (!2)' zu nichts expandiert. Dieser Umweg ist leider noetig. Hinweise: 1. Der Text, der zusammen mit !define angegeben wird, wird nicht an das Ausgabeformat angepasst. 2. Text, der als Parameter an eine Definition uebergeben wird, wird an das Ausgabeformat angepasst. 3. UDO kann natuerlich Ueberschriften mit !heading direkt erzeugen. Die obigen Beispiele eigneten sich halt gut zur Darstellung des Problems. 4. Wie bei den Makros sollten Sie aufpassen, dass sie keine von UDO benutzten Platzhalter wie (!B), (!v), (!TeX) etc. verwenden. Auch gibt es hier eine maximale Anzahl von benutzbaren Definitionen. Sie liegt momenatan bei maximal 128 pro Quelltext. 6.9.4 Symbole -------------- Symbole sind benutzerdefinierte inhaltsleere Variablen, welche sich durch das Kommando !set und beim Aufruf von UDO durch die Kommandozei- lenoption -D setzen und mit dem Kommando !unset auch wieder entfernen lassen. Ob ein Symbol (nicht) gesetzt ist, laesst sich durch die Abfrage-Befehle !ifset bzw. !ifnset testen. Die Einsatzmoeglichkeiten von Symbolen sind vielfaeltig. Im folgenden Beispiel werde ich versuchen, Ihnen ein typisches Anwendungsgebiet zu zeigen, bei dem man je nach gesetzten Symbolen eine Zieldatei mit unterschiedlichem Inhalt erhaelt. Gehen wir einmal davon aus, dass wir einen Quelltext geschrieben haben, der drei Kapitel enthaelt. Die ersten beiden Kapitel sind bereits fertig, am letzten Kapitel wird noch eifgrig herumgebastelt. Um nun die Turn-Around-Zeiten zu minimieren, wollen wir eine Zieldatei erzeugen, die nur das dritte Kapitel enthaelt. Nur wenn das Symbol `AlleKapitel' gesetzt ist, soll die Zieldatei alle Kapitel enthalten: !begin_document !tableofcontents !ifset [AlleKapitel] !include kapitel1.ui !include kapitel2.ui !endif !include kapitel3.ui !end_document Starten Sie UDO nun "normal", wird eine Zieldatei erstellt, die nur das dritte Kapitel enthaelt. Starten Sie UDO hingegen mit der Komman- dozeilenoption `-D AlleKapitel', so werden alle Kapitel umgewandelt. Das Spielchen kann man natuerlich noch etwas ausbauen. Durch Verwendung weiterer Symbole kann man gezielt nur einzelne Kapitel oder alle zusammen in die Zieldatei aufnehmen. Im folgenden Beispiel wird bei Uebergabe der Option `-D Kapitel1' nur das erste Kapitel in die Zieldatei aufgenommen. Uebergibt man `-D Kapitel1' und `-D Kapitel2', so werden das erste und das zweite Kapitel eingebunden. Uebergibt man hingegen `-D AlleKapitel', so wird die Zieldatei komplett dargestellt: !begin_document !tableofcontents !ifset [Kapitel1, AlleKapitel] !include kapitel1.ui !endif !ifset [Kapitel2, AlleKapitel] !include kapitel2.ui !endif !ifset [Kapitel3, AlleKapitel] !include kapitel3.ui !endif !end_document Der Phantasie sind also wenige Grenzen gesetzt! Wie in der Einfuehrung zu diesem Abschnitt beschrieben, lassen sich Symbole auch wieder loeschen. Dazu bedient man sich des Befehls !unset. Wollen Sie in obigem Beispiel partout verhindern, dass alle Kapitel in die Zieldatei eingebunden werden, so koennen Sie zuvor das Symbol AlleKapitel loeschen, sofern es gesetzt wurde. Dies funktioniert so: !ifset [AlleKapitel] !unset AlleKapitel !endif In diesem Beispiel wird also zunaechst abgefragt, ob das Symbol `AlleKapitel' gesetzt ist. In dem Falle wird es durch den Befehl !unset geloescht. Die vorherige Abfrage ist deshalb notwendig, damit man eine Fehlermeldung seitens UDO vermeidet, falls das Symbol `AlleKapitel' einmal nicht gesetzt ist. Hinweise: 1. Es sind maximal 32 Symbole erlaubt. 2. Der Bezeichner eines Symbols darf maximal 32 Zeichen lang sein. 6.9.5 Indizes -------------- Um in einem Quelltext Eintraege fuer ein Indexregister anzugeben, gibt es den Befehl !index und den Platzhalter (!idx ...). Indizes koennen und sollten mehrfach angegeben werden. Der Befehl zur Angabe eines Indexeintrags lautet folgendermassen: !index Indexeintrag Der Indexeintrag erscheint dann im Index von LaTeX, im Index des mit Plain-TeX bearbeiteten Texinfo-Files, im Index des ST-Guide-Hypertex- tes sowie im Stichwortverzeichnis der Textverarbeitung, mit der man die RTF-Datei importiert. Bei WinHelp erscheint der Indexeintrag im Suchen-Dialog. Um einen mehrstufigen Indexeintrag anzulegen, benutzt man ein doppeltes Ausrufezeichen als Trennung der einzelnen Stufen. Es werden bis zu drei Stufen unterstuetzt. Mehrstufige Indizes sollte man dann einsetzen, falls man davon ausgehen kann, dass der Leser bei der Suche nach einem Wort auf verschiedene Art und Weise im Indexregister nachschaut. Falls Sie denken, dass der Leser bei der Suche nach dem Wort "Zeilenabstand" im Index auch unter "Abstand" nachschauen wird, sollten Sie beide Indexeintraege vornehmen. !index Zeilenabstand !index Abstand !! Zeilen Bei der Platzhalterversion koennen zwischen einem und vier Parameter benutzt werden. Die folgenden Beispiele zeigen, wie die Umsetzung nach LaTeX, WinHelp und RTF erfolgt: UDO: ein (!idx [Index]) LaTeX: ein Index\index{Index} RTF: ein {\xe\v Index}Index Win: ein {K{\footnote K Index}}Index sonst: ein Index UDO: ein (!idx [Wort] [Index]) LaTeX: ein Wort\index{Index} RTF: ein {\xe\v Index}Wort Win: ein {K{\footnote K Index}}Wort sonst: ein Wort UDO: ein (!idx [Wort] [Index] [Subindex]) LaTeX: ein Wort\index{Index!Subindex} RTF: ein {\xe\v Index, Subindex}Wort Win: ein {K{\footnote K Index, Subindex}}Wort sonst: ein Wort UDO: ein (!idx [Wort] [Index] [Subindex] [Subsubindex]) LaTeX: ein Wort\index{Index!Subindex!Subsubindex} RTF: ein {\xe\v Index, Subindex, Subsubindex}Wort Win: ein {K{\footnote K Index, Subindex, Subsubindex}}Wort sonst: ein Wort Hinweise: 1. Die Umwandlung von Indizes laesst sich durch den Schalter !no_index im Vorspann unterbinden. 2. Kapitelueberschriften, Labels und Aliase gelangen standardmaessig bei keinem Format in den Index. Sie koennen dies allerdings automatisch von UDO erledigen lassen, indem Sie die Schalter !use_nodes_inside_index, !use_label_inside_index und !use_alias_inside_index im Vorspann setzen. 3. Steht in einem Kapitel der Schalter !ignore_index, so gelangt die Ueberschrift nicht in den Index. Auch dann nicht, wenn man den Schalter !use_nodes_inside_index verwendet. 4. Wenn man nach LaTeX umwandelt und Index-Befehle verwendet, so fuegt UDO in das LaTeX-File die fuer das Programm "Makeindex" noetige Befehle ein. Sonderzeichen in den Indizes werden bereits speziell fuer Makeindex angepasst. 5. Die jeweiligen Parameter werden also durch eckige Klammern eingefasst. Falls man in einem Parameter eine schliessende eckige oder runde Klammer benutzen moechte, so muss deren Wirkung mit einem Ausrufezeichen aufgehoben werden. Geschieht dies nicht, so denkt UDO, der Parameter oder der Index-Befehl waere bereits beendet. Ein Beispiel: Falsch: (!idx [Copyright (c) 1995] ) Richtig: (!idx [Copyright (c!) 1995] ) 6.9.6 Abfragebefehle --------------------- In vielen Faellen ist es noetig, direkt im Quelltext verschiedene Passagen fuer die jeweiligen Formate oder Sprachen anzugeben. UDO bietet daher einen Satz Befehle, mit denen diese Abfragen erfolgen koennen. Mit einem if...-Befehl wird eine Abfrage eingeleitet. Liefert die Abfrage ein wahres Ergebnis, so werden alle Zeilen bis zum Befehl !endif bzw. !else von UDO verarbeitet. Liefert die Abfrage ein falsches Ergebnis, so werden alle Zeilen bis zu !endif bzw. !else ignoriert. Abfrage des Zielformats ----------------------- Mit dem Befehl !ifdest koennen Sie das Format abfragen, welches von UDO ausgegeben wird. Zur Abfrage verwenden Sie die Kuerzel der Ausga- beformate: asc ASCII aqv Apple-QuickView htag HP-Helptag-SGML html HTML info Texinfo ldoc Linuxdoc-SGML lyx LyX man Manualpage pch Pure-C-Help pdf PDF rtf RTF stg ST-Guide tex LaTeX tvh Turbo-Vision-Help win WinHelp Zusaetzlich zu den hier genannten Zeichenketten koennen jeweils auch "all" und "none" verwendet werden. Bei "all" liefert eine Abfrage immer ein wahres Ergebnis, bei "none" immer ein falsches. Das folgende Beispiel zeigt, wie man den Titel der Windows-Hilfe anders als fuer die anderen Formate setzt: !ifdest [win] !title Die Windows-Hilfe zu !else !title Die Anleitung zu !endif Verwandt mit dem !ifdest-Befehl ist der Befehl !ifndest. Hier wird abgefragt, ob man nicht in ein Format ausgibt. Das obige Beispiel laesst sich demnach auch folgendermassen darstellen: !ifndest [win] !title Die Anleitung zu !else !title Die Windows-Hilfe zu !endif Bei den Abfragen koennen Sie natuerlich auch mehrere Formatkuerzel angeben. Die Abfrage liefert dann ein wahres Ergebnis, wenn mindestens ein Kuerzel mit dem Ausgabeformat uebereinstimmt. Mit folgender Abfrage koennen Sie z.B. den Hypertextformaten einen besonderen Titel verpassen: !ifdest [win,html,stg,htag] !title Der Hypertext zu !else !title Die Anleitung zu !endif Abfrage der Sprache ------------------- Mit dem Befehl !iflang koennen Sie die Sprache abfragen, die fuer die Ausgabe der Zieldatei verwendet wird. Hierbei gelten folgende Zeichenketten: english: Englisch french: Franzoesisch german: Deutsch italian: Italienisch spanish: Spanisch swedish: Schwedisch Zusaetzlich zu den hier genannten Zeichenketten koennen jeweils auch "all" und "none" verwendet werden. Bei "all" liefert eine Abfrage immer ein wahres Ergebnis, bei "none" immer ein falsches. Bei kleineren Texten koennen Sie so z.B. gleich alle Uebersetzungen in einem Quelltext unterbringen: !iflang [german] !title Die Benutzeranleitung zu !else !title The User's Guide to !endif Auch hier gibt es den verwandten Befehl !ifnlang, der abfragt, ob nicht in eine Sprache ausgegeben wird. Das obige Beispiel liesse sich also auch so ausdruecken: !ifnlang [german] !title The User's Guide to !else !title Die Benutzeranleitung zu !endif Selbstverstaendlich koennen Sie auch bei dieser Abfrage wieder mehrere Sprachkuerzel angeben. Ein Beispiel brauche ich dafuer wohl nicht mehr angeben. Abfrage von Symbolen -------------------- Mit dem Befehl !ifset koennen Sie testen, ob Symbole gesetzt sind, mit dem Befehl !ifnset, ob Symbole nicht gesetzt sind. Wie Sie bereits wissen, koennen Sie Symbole mit der Kommandozeilenop- tion -D und mit dem Befehl !set setzen und mit dem Befehl !unset wieder loeschen. Im folgenden Beispiel wird abgefragt, ob das Symbol Farbbilder gesetzt ist und entsprechend ein passendes Bild eingebunden: !ifset [Farbbilder] !image colour/tiger !else !image mono/tiger !endif Wenn Sie nun UDO mit der Option -D Farbbilder aufrufen bzw. vor der obigen Abfrage das Kommando !set Farbbilder in den Quelltext einbauen, so bindet UDO ein Farbbild, andernfalls ein monochromes Bild ein. Abfrage des Betriebssystems --------------------------- Mit dem Befehl !ifos koennen Sie das Betriebssystem abfragen, auf dem UDO laeuft. Hierbei gelten folgende Zeichenketten: beos: BeOS dos: DOS hpux: HP-UX linux: Linux macos: MacOS nextstep: NeXTStep sinix: SINIX sunos: SunOS tos: TOS Auch hier gilt, dass zusaetzlich zu den genannten Zeichenketten auch "all" und "none" verwendet werden koennen. Wiederum existiert ein verwandter Befehl namens !ifnos, der abfragt, ob UDO nicht auf dem angegebenen Betriebssystem laeuft. 6.9.7 Formatspezifische Befehle -------------------------------- UDO bietet fuer jedes Ausgabeformat zwei Befehle und eine Umgebung, mit denen es moeglich ist, Zeilen nur dann auszugeben, wenn man in eines der Formate umwandelt. In diesen Zeilen koennen dann spezielle Befehle fuer ein Format angegeben werden, die UDO dann 1:1, also Umwandlung von Sonderzeichen und ohne Einrueckungen, ausgibt. Bei diesen Befehlen und Umgebungen spielen Kuerzel eine grosse Rolle. Hier eine Uebersicht, welches Kuerzel fuer welches Ausgabeformat benutzt werden kann: asc ASCII aqv Apple-QuickView htag HP-Helptag-SGML html HTML info Texinfo ldoc Linuxdoc-SGML lyx LyX man Manualpage pch Pure-C-Help pdf PDF rtf RTF stg ST-Guide tex LaTeX tvh Turbo-Vision-Help win WinHelp Es existieren nun je zwei Befehle fuer jedes Format, mit dem man Zeilen, die nur fuer dieses Format bestimmt sind, und fuer Zeilen die fuer alle ausser dieses Format bestimmt sind, ausgeben kann. Die Befehle ergeben sich, indem man den Kuerzeln ein Ausrufezeichen bzw. noch ein weiteres Gleichheitzeichen voranstellt. Um beispielsweise eine Zeile nur in das ASCII-Format auszugeben, gibt man folgendes an: !asc Diese Zeile erscheint nur im ASCII-Format Um eine Zeile in allen Formaten ausser dem ASCII-Format auszugeben, gibt man folgendes an: !=asc Diese Zeile erscheint nicht im ASCII-Format Der Inhalt dieser Zeilen wird ohne das Kommando selbst, ohne Beruecksichtigung von UDO-Kommandos und ohne Umwandlung von Sonderzei- chen ausgegeben. Diese Zeilen sorgen - genau wie alle Kommandos - auch dafuer, dass ein Absatz beendet wird. Diese Kommandos eignen sich also nicht dazu, mittem in einem Absatz unterschiedliche Saetze einzufuegen! Dieses Kommandos koennen dazu dienen, formatspezifische Kommandos einzufuegen. Im folgenden Beispiel wird gezeigt, welche Kommandos man in einen Quelltext einfuegen muss, damit LaTeX weiss, mit welchem Stil ein Dokument auszudrucken ist und damit es einen Index erzeugt: !no_preambel [tex] !tex \documentstyle[11pt,german,makeidx]{article} !tex \makeindex [...] !tex \printindex Die raw-Umgebung ---------------- Will man groessere Bloecke im jeweiligen Format angeben, waere es ziemlich muehsam, wenn man jede Zeile mit einem Kuerzel beginnen muesste. Daher bietet UDO die "raw-Umgebung" an. Sie wird mit dem Befehl !begin_raw begonnen und mit dem Befehl !end_raw beendet. Genau wie der Inhalt der Zeilen, die mit den obigen Formatkuerzeln begonnen werden, gibt UDO diese Zeilen ohne Anpassung von Sonderzei- chen und ohne Beruecksichtigung von UDO-Befehlen direkt aus. Zusammen mit der Moeglichkeit, das Ausgabeformat abzufragen, in das ein Quelltext umgewandelt wird, koennen spezielle Befehle ausgegeben werden. Anwendungsbeispiele waeren z.B. komplizierte Tabellen fuer LaTeX oder Formulare fuer HTML. Letzteres soll hier aufgezeigt werden: !ifdest [html] !begin_raw
     

Name:

!end_raw !else In der HTML-Version befindet sich hier ein Formular. !endif Um noch einmal den Unterschied zur verbatim-Umgebung klarzumachen: Der Text einer verbatim-Umgebung wird 1:1 dargestellt. Wuerden Sie das obige Formular in eine verbatim-Umgebung packen, wuerden Sie im HTML- Browser lediglich den Quelltext des Formulars sehen! Nur bei der Verwendung der raw-Umgebung wird das Formular auch als solches vom HTML-Browser dargestellt. ====================================================================== Kapitel 7 Tips & Tricks ====================================================================== In diesem Kapitel werde ich Ihnen ein paar Tips geben, die Sie beim Schreiben von Texten beachten sollten. Desweiteren gebe ich Ihnen einen kleinen Einblick in meine Trickkiste. Hier finden Sie vielleicht genau die Problemloesung, auf die Sie so ohne weiteres nicht gekommen waeren. In naher Zukunft werde ich weitere Tips in diese Dokumentation aufnehmen. Achten Sie also bitte auf Updates dieser Dokumentation oder auf Upgrades von UDO. 7.1 Sieben goldene Regeln fuer das Schreiben eines Quelltextes =============================================================== Bevor Sie mit dem Schreiben eines UDO-Quelltextes beginnen, werfen Sie bitte einen Blick auf die folgenden Regeln und praegen Sie sie sich ein: 1. Geben Sie Ihrem Text eine uebersichtliche Struktur! 2. Sprechen Sie den Leser direkt an. Verwenden Sie "Sie koennen..." bzw. "Du kannst" anstatt "Man kann...". 3. Benutzen Sie Schriftarten sparsam und einheitlich. Der uebermaessige Einsatz von kursivem, fettem und unterstrichenen verwirrt den Leser eher, als das er ihm hilft. Falls Sie Schriftarten einsetzen, so tun Sie dies allerdings einheitlich. Diese Anleitung stellt Dateinamen grundsaetzlich mit einer nichtproportionalen Schrift dar, Kommandos werden immer kursiv angezeigt. 4. Fassen Sie sich so kurz wie moeglich. Holen Sie nicht zuweit aus, sondern kommen Sie moeglichst schnell auf den Punkt. Der Leser langweilt sich sonst oder wird unkonzentriert und ueberliest womoeglich noch die wichtigen Stellen. Ich gebe zu, ich schaffe es meistens auch nicht, mich kurz zu fassen. ;-) 5. Verwenden Sie kurze Kapitelueberschriften. Der Leser wird dann das gewuenschte Kapitel beim Ueberfliegen des Inhaltsverzeichnisses schneller (wieder)finden. Ausserdem nehmen Sie UDO dadurch eine Menge Arbeit bei der Referenzierung ab, was durch eine schnellere Umwandlung belohnt wird. 6. Vermeiden Sie gleichnamige Ueberschriften. Nicht nur dass Sie damit UDO und Hypertext-Compiler verwirren, nein, auch der potentielle Leser geraet bei gleichnamigen Kapiteln durcheinander. 7. Gehen Sie sparsam mit Makros und Definitionen um. UDO muss jede Zeile bis zu zweimal nach allen benutzten Makros und Definitionen durchsuchen. Jedes zusaetzliche Makro und jede zusaetzliche Definition verlangsamt den Umwandlungsvorgang. 7.2 Allgemeine Tips & Tricks ============================= 7.2.1 Zerteilen Sie grosse Dokumentationen ------------------------------------------- Falls Sie eine Dokumentation schreiben, die einen Umfang von 30 KB oder mehr hat, so sollten Sie sie in kleine Haeppchen aufteilen. Diese Dateien koennen dann mit dem !include an passender Stelle eingeladen werden. Durch die Aufteilung haben Sie den Vorteil, dass Sie die Dokumentation durch einfaches Verschieben nur einer einzigen Zeile neu gliedern koennen. Waere der gesamte Quelltext in einer Datei, muessten Sie mit einem Editor gleich ganze Bloecke umkopieren. Ein weiterer Vorteil der Aufteilung ist, dass Sie bestimmte Kapitel schnell wiederfinden koennen, sofern Sie den Dateien sinnvolle Namen geben. Ausserdem koennen Sie leicht und schnell nur Teile der Dokumentation auf syntaktische Korrektheit testen. Nehmen wir an, wir haben einen Quelltext mit fuenf Kapiteln. Erstellen Sie eine Datei mit den globalen Schaltern, eine Hauptdatei und fuenf Dateien mit dem Kapiteltext: [haupt.u] !include header.ui !begin_document !maketitle !tableofcontents !include kapitel1.ui !include kapitel2.ui !include kapitel3.ui !include kapitel4.ui !include kapitel5.ui !end_document [header.ui] !title ... !program ... !author ... [kapitel1.ui] !node Kapitel 1 ... [kapitel2.ui] !node Kapitel 2 ... [usw] Falls Sie nun einmal nur ein Kapitel umwandeln wollen, erstellen Sie ganz einfach eine zusaetzliche Hauptdatei, die Sie dann umwandeln: [kap5test.u] !include header.ui !begin_document !maketitle !tableofcontents !include kapitel5.ui !end_document Gerade bei sehr umfangreichen Dokumentationen kann man die Fehlersuche und -korrektur drastisch beschleuingen. Falls Sie sich mal ein Bild davon machen wollen, wie so eine Aufteilung aussehen kann, dann schauen Sie sich einmal die Quelltexte dieser UDO-Dokumentation an. Stuende diese Dokumentation in einer Datei, haette ich schon laengst den Ueberblick verloren. 7.2.2 Verwenden Sie standardisierte Quelltexte ----------------------------------------------- Es soll ja Autoren geben, die laufend neue Programme oder Hypertexte veroeffentlichen. Und in fast allen Beschreibungen tauchen Kapitel auf, in denen z.B. Copyrightangaben benutzt werden. Solche Dinge braucht man natuerlich nicht immer wieder neu zu schreiben, sondern kann sich unter Zuhilfenahme von Makros kleinere Standardtexte erstellen. Nehmen wir an, unsere Copyrightangabe sieht so aus: ""Hello, World!"" Version 8.15 (!nl) Copyright (!copyright) 1996 bei C. AnfÌnger Bei einem anderen Programm wird wieder fast die gleiche Angabe erfolgen, lediglich der Name des Programms und die Versionsnummer werden sich unterscheiden. Was liegt also naeher, als solch einen Text zu standardisieren? ""(!ProgrammName)"" Version (!ProgrammVersion) (!nl) Copyright (!copyright) (!ProgrammJahr) bei C. AnfÌnger Im Vorspann einer Datei, die diesen Text einbindet, muessen dann lediglich die Makros "ProgrammName", "ProgrammVersion" und "ProgrammJahr" gesetzt werden, im Hauptteil muss diese Datei dann nur noch an passender Stelle eingebunden werden: !macro ProgrammName Hello, World! !macro ProgrammVersion 8.15 !macro ProgrammJahr 1996 ... !begin_document ... !include copyleft.ui Dieser Text kann dann wieder beim naechsten Projekt eingesetzt werden, indem man einfach die Makros anders definiert. Zugegeben, dies ist nur ein kurzes Beispiel. Bei umfangreicheren Texten ist es jedoch eine sehr grosse Arbeitserleichterung. 7.2.3 Schreiben Sie Ihre eigenen Kommandos ------------------------------------------- UDO unterstuetzt laengst nicht alle Moeglichkeiten jedes Ausgabeforma- tes. Jedoch ist es unter Zuhilfenahme der Definitionen ein Leichtes, sich eigene Befehle zu schreiben oder spezielle Befehle fuer ein Aus- gabeformat einzubauen. Die Kenntnis der Syntax des Ausgabeformates ist dabei natuerlich sehr von Vorteil. Das folgende Beispiel zeigt, wie man Befehle zur Aenderungen der Schriftgroesse im LaTeX-, HTML-, WinHelp- und Rich Text Format einbauen kann: !code_iso !program Ønderung der SchriftgrÎÞe !author Dirk Hagedorn !date 19. August 1996 !ifdest [tex] !define tiny {\tiny{(!1)}} !define large {\large{(!1)}} !define Large {\Large{(!1)}} !define LARGE {\LARGE{(!1)}} !define huge {\huge{(!1)}} !define Huge {\Huge{(!1)}} !endif !ifdest [win,rtf] !define tiny {\fs14 (!1)} !define large {\fs28 (!1)} !define Large {\fs36 (!1)} !define LARGE {\fs44 (!1)} !define huge {\fs50 (!1)} !define Huge {\fs60 (!1)} !endif !ifndest [tex,win,rtf] !macro tiny (!2) !macro large (!2) !macro Large (!2) !macro LARGE (!2) !macro huge (!2) !macro Huge (!2) !endif !begin_document !maketitle !tableofcontents !node Test (!tiny [tiny]), normal, (!large [large]), (!Large [Large]), (!LARGE [LARGE]), (!huge [huge]) und (!Huge [Huge]). !end_document 7.3 Tips & Tricks zu LaTeX =========================== 7.3.1 Die eigene LaTeX-Praembel -------------------------------- Im Gegensatz zu den vorherigen UDO-Versionen erzeugt UDO6 automatisch passende LaTeX-Praeambeln fuer LaTeX 2.09 und LaTeX2e. Falls Ihnen diese automatisch generierten Praeambeln nicht gefallen, koennen Sie UDO mit der Angabe des Schalters !no_preamble [tex] im Vorspann dazu bewegen, die Praeambel nicht zu erzeugen. In dem Falle koennen Sie mit dem Befehl !tex oder der raw-Umgebung zu Beginn des Quelltextes die eigene Praeambel verfassen. Das folgende Beispiel zeigt, wie das funktioniert: !code_iso !no_preamble [tex] # Für LaTeX 2.09 die folgenden Zeilen auskommentieren # !tex \documentstyle[12pt,german]{article} # Für LaTeX 2e die folgenden Zeilen auskommentieren !tex_2e !tex \documentclass[12pt,a4paper]{article} !tex \usepackage{german,a4} !begin_document !node Beispiel In diesem Beispiel wird eine benutzerdefinierte (!LaTeX)-PrÌambel verwendet. !end_document 7.4 Tips & Tricks zum ST-Guide-Format ====================================== 7.4.1 Die eigene ST-Guide-Titelseite ------------------------------------- Falls Ihnen das Layout der Titelseite, die UDO mit !maketitle erzeugen kann, nicht gefaellt, so koennen Sie sich mit nur wenigen Handgriffen Ihre eigene Titelseite erzeugen. Im folgenden Beispiel wird nach !begin_document nur fuer den ST-Guide eine eigene Titelseite mittels eines Kapitels erzeugt, welches nicht im Inhaltsverzeichnis erscheint. Am Ende der Titelseite wird das Wort "Inhaltsverzeichnis" angegeben, so dass ein Link zu eben diesem vom ST-Guide erzeugt wird. !program Titelseiten mit UDO !begin_document !ifndest [stg] !maketitle !else !node* Titel !begin_center Der Hypertext zu ""Hello, World!"" (!nl) Version 8.4 !end_center !begin_table [cc] Autor: !! Vertrieb: Reiner C. AnfÌnger !! Ultra-Supra-Soft Feldweg 42 !! Postfach 4711 D-98755 Irgendwo !! D-12345 Sonstwo !end_table !smallskip !begin_center Inhaltsverzeichnis !end_center !endif !tableofcontents !node Jetzt geht's lohoos Dies ist das erste Kapitel. !node Feierabend SchluÞ jetzt! !end_document 7.4.2 Verzichten Sie auf Blocksatz ----------------------------------- "Warum das denn?", werden Sie sich vielleicht fragen. Nun, mit Hyperion/HypC gibt es von Martin Osieka ein Programmpaket fuer den Apple Macintosh, mit dem man ST-Guide-Hypertexte auch hier schreiben, umwandeln und darstellen kann. Im Gegensatz zum ST-Guide koennen jedoch mit Hyperion auch Hypertexte vernuenftig mit proportionalen Zeichensaetzen dargestellt werden, falls kein Blocksatz benutzt wird. Sie sollten daher Hypertexte mit allgemeinem Inhalt nicht mit Blocksatz erstellen, denn interessierte Hyperion-Benutzer wuerden es Ihnen veruebeln. Bei Hypertexten, die nur auf dem Atari Sinn machen (z.B. fuer ein Programm), koennen Sie natuerlich ruhigen Gewissens Blocksatz verwenden. 7.5 Tips & Tricks zum WinHelp-Format ===================================== 7.5.1 Schreiben Sie die Quelltexte mit einem Windows-Editor ------------------------------------------------------------ Sie koennen die Laufzeit von UDO positiv beinflussen, wenn Sie Quelltexte fuer eine Windows-Hilfe gleich im Windows-Zeichensatz schreiben. UDO braucht in dem Falle keine aufwendige Zeichensatzkon- vertierung vornehmen. Achten Sie hierbei darauf, dass Sie den Schalter !code_iso benutzen, um UDO anzuzeigen, dass die Texte nicht im DOS-Zeichensatz erstellt wurden. Tip: Als Editor empfehle ich den "Programmer's File Editor" (kurz: PFE) von Alan Phillips, einen grandiosen Freeware-Editor, der in einer 16- und 32-Bit-Version verfuegbar ist. Man findet Ihn auf vielen CD- ROMs und natuerlich auf fast jedem FTP-Server. 7.5.2 Komprimieren Sie die WinHelp-Dateien ------------------------------------------- Mit den Schaltern !win_medium_compression und !win_high_compression sorgen Sie dafuer, dass der Help-Compiler die WinHelp-Datei komprimiert. Dadurch koennen Sie die Groesse der Datei bis zu 50% verringern, wobei sich allerdings die Laufzeit des Help-Compilers, besonders bei der hohen Komprimierungsrate, verlaengert. ====================================================================== Anhang A Wieso, weshalb, warum ====================================================================== Die folgenden Abschnitte sollen Ihnen bei Fragen und kleineren Problemen hilfreich zur Seite stehen. Ausserdem finden Sie die Antworten zu internen Fragen zu UDO. Zunaechst finden Sie daher einige allgemeine, spaeter dann formatspezifische Fragen. A.1 Allgemeine Fragen ====================== Was bedeutet `FAQ'? "FAQ" bedeutet "Frequently Asked Questions" und bedeutet uebersetzt soviel wie "haeufig gestellte Fragen". Im uebertragenen Sinn versteht man darunter eine Auflistung eben dieser oft gestellten Fragen samt der passenden Antwort. Wieso heisst UDO `UDO'? Als ich mit der Programmierung von UDO begann, brauchte ich einen Namen. Mir fiel auf die Schnelle nichts besseres ein als die Abkuerzung "UDO", was als Abkuerzung fuer "Universal DOcument" steht. Uebrigens: Der Autor heisst mit Vornamen nicht Udo, sondern Dirk! Wie spricht man `UDO' aus `UDO' wird genauso ausgesprochen wie der Vorname Udo, also `Uh- Doh'. `UDO' wird nicht anglophil wie `Judo' oder `You do' ausgesprochen! Woher bekomme ich die aktuellen Versionen? Aktuelle Versionen von UDO koennen sich Besitzer eines Modems aus dem Gruppenprogrammteil UDO.Pub der Maus Iserlohn MK2 (++49 2371 944925) downloaden. Auf neue Versionen wird in der MausNet-Gruppe ATARI.NEWS hingewiesen. Die aktuellen Versionen sind darueber hinaus auch per FTP erhaeltlich. Die Archive liegen im Verzeichnis members.aol.com/UDODH/ (nicht ftp.members.aol.com!). Noch einfacher ist es, in einem WWW-Browser die URL http://members.aol.com/UDODH/index.htm aufzurufen, auf der man die Links zu den jeweiligen Archiven findet. Interessenten, die kein Modem besitzen und keinen Zugriff auf FTP-Server oder das World Wide Web haben, koennen die aktuellen Versionen auch durch Einsenden einer formatierten Diskette samt adressierten und ausreichend frankierten Rueckumschlags anfordern. Die Name der Archive der einzelnen Versionen haben jeweils einen bestimmten Aufbau: udorlyyy.sss ||| || | ||| |+--+--- .zip: Gepackt mit ST-ZIP oder PKZIP ||| | .tgz: Mit gzip gepacktes tar-Archiv ||| | ||+-+------- beo: Version fÏr BeOS || hp4: Version fÏr HP-UX, 300/400er Baureihe || hp8: Version fÏr HP-UX, 700/800er Baureihe || lin: Version fÏr Linux || mac: Version fÏr MacOS || nex: Version fÏr NeXTStep || sin: Version fÏr Sinix || sun: Version fÏr SunOS || tos: Version fÏr Atari und Kompatible || dos: Version fÏr DOS, OS/2 und Windows || man: Die Quelltexte dieser Dokumentation || |+---------- g: deutschsprachige Version | e: englischsprachige Version | +----------- Releasenummer: 6 fÏr UDO Rel. 6 Das Archiv mit der deutschsprachigen Atari-Version des Release 6 wuerde also udo6gtos.tos lauten, das mit den englischsprachigen Quelltexten udo6eman.zip. Falls die Archive auf einem FTP-Server liegen, so koennen sie eventuell aussagekraeftige Namen besitzen, z.B. udo6_ger_linux.tar.gz oder udo6_eng_hp-ux.tar.gz. Wird es Portierungen auf andere Systeme geben? Von UDO existieren momentan Versionen fuer folgende Systeme: o Atari TOS o DOS, OS/2, Windows o HP-UX 9.x auf HP-Rechnern der 300/400er und 700/800er Baureihe o Linux i86 o MacOS o NeXTStep o Sinix o SunOS 5.5 UDO wurde komplett in C geschrieben, verzichtet vollkommen auf betriebssystemspezifische Routinen. Dadurch koennte die Kommando- zeilenversion von UDO theoretisch auf jedes beliebige System portiert werden, fuer das ein ANSI-C-Compiler existiert. Wenn Sie an einer Portierung auf ein bestimmtes System interes- siert sind und einen Compiler fuer dieses System besitzen, so schreiben Sie mir (siehe "Kontaktadresse") einfach mal. Koennen auch `systemfremde' Formate erzeugt werden? Mit UDO kann auf man jedem System natuerlich auch Formate fuer andere Betriebssysteme erzeugt werden, da die Versionen identisch sind. So ist es moeglich, mit der Atari-Version WinHelp- Quelltexte zu erzeugen oder unter OS/2 mit der DOS-Version ST- Guide-Quelltexte. Lediglich eine Umsetzung der Sonderzeichen muss ggf. erfolgen. Dies kann man z.B. mit GNU-recode durchfuehren. Auf Wunsch gibt es auch bei mir (siehe "Kontaktadresse") ein Programm zur Umsetzung der Sonderzeichen in Textdateien. Kann man Texte "hier" schreiben und "dort" konvertieren? Ja, denn UDO versteht alle Zeichensaetze der System, fuer die UDO erhaeltlich ist. Somit koennen Texte unter DOS geschrieben werden und auf einem Unix-Rechner konvertiert werden. Sogar in einer Datei koennen die Zeichensaetze gewechselt werden, falls das noetig sein sollte. Durch einen Satz Befehle koennen Sie UDO mitteilen, welcher Zeichensatz in den folgenden Zeilen benutzt werden soll. Kommen in Zukunft weitere Ausgabeformate hinzu? Ich plane, die folgenden Formate in Zukunft zu unterstuetzen: o Apple Guide o HP-Helptag-SGML o OS/2-Hilfe o Portable Document Format `PDF', Adobe Acrobat Reader o PostScript Die Unterstuetzung dieser Formate scheitert bisher teils an fehlender Dokumentation, teils an der Komplexitaet (z.B. vom PDF), teils auch daran, dass ich nicht weiss, ob man fuer ein Format Lizenzgebuehren bezahlen muss. Kann sich die UDO-Syntax noch aendern? UDO ist ein Programm, das staendig weiterentwickelt wird. Es werden sicherlich auch in Zukunft weitere Kommandos hinzukommen. Teilweise wird es sich auch nicht vermeiden lassen, die Syntax einiger Kommandos zu aendern. Auf solche Aenderungen wird aber besonders hingewiesen, so dass man die noetigen Anpassungen innerhalb von Minuten mit einem Editor vornehmen kann. Wie funktioniert UDO? UDO liest die Quelldatei(en) in zwei Durchgaengen ein. Im ersten Durchgang werden Schalter, Makros, Definitionen sowie die Namen der Kapitel fuer das Inhaltsverzeichnis und die automatische Referenzierung ermittelt. Im zweiten Durchgang erfolgt dann die Konvertierung und Formatierung des Textes. UDO speichert bis zum Eintreffen einer Leerzeile bzw. eines Kommandos den Text in einem internen Puffer und gibt dann den eingelesenen Absatz aus bzw. fuehrt das jeweilige Kommando aus. Aus dem letzten Satz folgt: Leerzeilen und Kommandos unterteilen Absaetze. Wie referenziert UDO? UDO legt bei den Hypertext-Formaten (ausser beim ST-Guide-Format) im Text automatisch Querverweise zu Kapiteln und Sprungmarken an. Es werden dabei nur Verweise auf "andere" Seiten angelegt, also keine Verweise auf Stellen der aktuellen Seite. Mit dem Schaltern !autoref kann man die automatische Referenzie- rung aus- (Parameter [off]) und wieder einschalten (Parameter [on]). Wie verweist man auf Stellen des aktuellen Kapitels? Da UDO nicht auf der Seite Verweise anlegt, auf der ein Label gesetzt wurde, gibt es ein Problem, falls man am Seitenende einen Verweis zum Seitenanfang anlegen will. Daher muss man hier einen manuellen Querverweis setzen. !node Test !label Test Anfang [...] (!link [Zum Seitenanfang] [Test Anfang]) Wie bekomme ich Bilder in ein Inhaltsverzeichnis? Dazu muss man auf den Befehl !tableofcontents verzichten und ein Kapitel anlegen, in welches das Inhaltsverzeichnis ausgegeben wird. In einem normalen Kapitel kann man natuerlich Bilder wie sonst auch benutzen. Beispiel: !begin_document !maketitle !node Inhaltsverzeichnis !image foo !toc [all] !node Erstes Kapitel A.2 Fragen zum ASCII-Format ============================ Ist eine Aufteilung in mehrere Dateien geplant? Bisher hat erst ein (unregistrierter) Benutzer den Wunsch geaeussert, dass UDO wie bei HTML Kapitel etc. in eigene Dateien ausgeben soll. Da dieser Wunsch bisher einmalig war, bin ich ihm nicht nachgekommen. Sollte jedoch der Bedarf vorhanden sein, bin ich gerne bereit, eine solche Option in UDO einzubauen. Die Routinen zur Aufteilung von Dateien sind quasi fertig und muessen nur noch fuer ASCII angepasst werden. Manche Zeilen sind laenger als 70 Zeichen, warum? Dies sind die Zeilen, in denen Sie Texthervorhebungen wie Fettschrift, kursive oder unterstrichene Woerter benutzt haben. Diese Hervorhebungen werden durch die Zeichen *, / und _ geschaffen, wie sie in der DFUe ueblich sind. Da einige Druckprogramme (z.B. IdeaList fuer den Atari ST) diese Hervorhebungen in Druckerbefehle umwandeln koennen bzw. einige Frontends diese Hervorhebungen unterstuetzen, zaehlt UDO diese Zeichen bei der Laengenermittlung nicht mit. Moechten Sie auf die Ausgabe der oben genannten Zeichen verzich- ten, so geben Sie im Vorspann eines Quelltextes den Schalter !no_effects [asc] an. Die Umlaute in der ASCII-Datei stimmen unter Windows nicht!? UDO erzeugt jeweils ASCII-Dateien, die den Systemzeichensatz verwenden. UDO ist allerdings ein DOS-Programm, kein Windowspro- gramm! Daher wird auch der DOS- und nicht der Windows-ANSI- Zeichensatz fuer die Erzeugung der ASCII-Dateien verwendet. Schauen Sie sich die ASCII-Dateien mal mit dem System- oder Terminal-Font an. Sie werden dann sehen und mir glauben, dass die Umlaute stimmen. Wie kann man die Zeilenbreite aendern? Die Zeilenbreite kann mit dem Befehl !parwidth veraendert werden. A.3 Fragen zum HTML-Format =========================== Wie kann man die Aufteilung in mehrere Dateien unterbinden? Im Gegensatz zu den anderen Formaten erzeugt UDO standardmaessig mehrere Dateien, die miteinander verknuepft sind. Fuer jedes Kapitel, jeden Abschnitt und Unterabschnitt wird eine eigene Datei mit der Endung .htm[l] angelegt. Die Namen der einzelnen Dateien richten sich nach der Nummer und der Position des jeweiligen Kapitel. Inhaltsverzeichnis und Titelseite gelangen in die Datei, die Sie UDO per Kommandozeile als --outfile uebergeben. Mit den Schaltern !html_merge_nodes, !html_merge_subnodes, !html_merge_subsubnodes oder !html_merge_subsubsubnodes koennen Sie die Aufteilung in mehrere Dateien unterbinden. Wird im Vorspann !html_merge_nodes benutzt, so wird das gesamte Dokument in einer Datei gesichert. Dies empfiehlt sich lediglich bei kleinen Dokumenten, die kleiner als 16 KB sind. !html_merge_subnodes sorgt dafuer, dass alle Abschnitte eines Kapitels in der Datei angegeben werden, in dem sich auch das Kapitel selbst befindet. Der Schalter !html_merge_subsubnodes sorgt dafuer, dass alle Unterabschnitte im gleichen File wie der uebergeordnete Abschnitt untergebracht werden. Der Schalter !html_merge_subsubsubnodes schliesslich sorgt dafuer, dass alle Paragraphen im gleichen File wie der uebergeordnete Unterabschnitt untergebracht werden. Mir gefallen die Dateinamen bei der HTML-Ausgabe nicht! Durch den Befehl !html_name koennen Sie einem Kapitel einen bestimmten Namen zuweisen, den UDO fuer die jeweilige Datei anstelle der etwas kryptischen Namen wie etwa "0a1009.htm" benutzt. Wie bekommt man diese scheusslichen Kopfzeilen weg? UDO erzeugt standardmaessig auf jeder HTML-Seite eine Kopfzeile, anhand derer man das Thema (gebildet aus den Daten von !title und !program) des Hypertextes erkennen kann. Desweiteren werden Links zu der vorgehenden, nachfolgenden und/oder uebergeordneten Seite angelegt. Dazu werden GIFs benutzt, die UDO automatisch erzeugt. Die Dateinamen dieser GIFs lauten udo_lf.gif, udo_rg.gif und udo_up.gif. Durch den Schalter !no_headlines [html] kann die Ausgabe der Kopfzeilen und der Grafiken unterbunden werden. Wie kann man bequem eigene Kopf- und Fusszeilen erzeugen? Um eigene Kopfzeilen und Fusszeilen zu erzeugen, kann man Makros benutzen, die man jeweils am Anfang und Ende eines Kapitels angibt. Der Inhalt dieser Kapitel erscheint dabei jedoch unterhalb der Ueberschrift. Auf folgende Art und Weise wurden beispielsweise Kopf- und Fusszeilen meiner WWW-Homepage angelegt, in der es Kapitel namens "Software", "Kontaktadressen" und "Links" gibt: Hauptdatei: !ifdest [html] !define HR
!macro HEAD [ Software | Kontaktadressen | Links ] (!HR) !macro FOOT (!I)Dirk Hagedorn - Letzte Ønderung (!short_today)(!i) !else !define HR !macro HEAD !macro FOOT software.ui: !node Software !html_name software (!HEAD) [...] (!FOOT) Wird nun nach HTML umgewandelt, so werden die jeweiligen Kopf- und Fusszeilen ausgegeben. Durch die Referenzierung von UDO werden automatisch Links auf die anderen Kapitel angelegt. Wandelt man nicht nach HTML um, so werden leere Definitionen und Makros erzeugt, wodurch keine Kopf- und Fusszeilen ausgegeben werden. Mal wird eine Tabelle umrahmt dargestellt, mal nicht!? Bei HTML kann man leider nur angeben, ob die gesamte Tabelle umrahmt werden soll oder ob sie gar nicht mit einem Rahmen dargestellt werden soll. Um eine Tabelle mit Rahmen darzustellen, muessen Sie bei !begin_table den Befehle !hline angeben. Fehlt !hline bei diesem Befehl, wird die Tabelle ohne Rahmen dargestellt. Wie legt UDO die Endungen der Dateieindungen fest? UDO benutzt als Endung fuer die HTML-Dateien immer die Endung des in der Kommandozeile mit der Option --outfile bzw. -o uebergebenen Dateinamens: -o index.htm .htm -o index.html .html -o INDEX.HTML .HTML Wenn Sie stattdessen die Option -o ! verwenden, benutzt UDO fuer 8+3-Dateisysteme immer die Endung .htm, bei Dateisystemen, die lange Namen erlauben, hingegen immer die Endung .html. Die Dateinamen bei den Querverweisen stimmen nicht!? Falls Sie HTML-Dateien auf einem Betriebssystem erstellen, dass keine langen Namen zulaesst, Sie als Endung .html vorgegeben haben und Sie diese Dateien dann auf einem Web-Server ablegen, so muessen Sie folgendes beachten: 1. UDO versucht zwar, foo.html zu sichern, TOS und DOS sichern die Datei jedoch nur als foo.htm. 2. UDO benutzt fuer alle Querverweise die Endung .html. Wenn nun ein HTML-Browser unter TOS und DOS versucht, foo.html zu oeffnen, oeffnet dieser anstandslos foo.htm. 3. Nach dem Kopieren der Dateien auf den Web-Server *muessen* die Endungen der Dateien von .htm auf .html angepasst werden. Hier wird foo.htm nicht geoeffnet, wenn auf foo.html zugegriffen werden soll! A.4 Fragen zum Manualpage-Format ================================= Das Manualpage-Format ist eigentlich ein ASCII-Format, bei dem lediglich Schriftarten durch Backspace-Sequenzen erzeugt werden. Es findet seinen Einsatz zur kurzen Beschreibung von Programmen fuer Unix-Betriebssysteme. Fuer laengere Anleitungen sollte man nicht Manualpages erstellen, sondern das Texinfo-Format vorziehen. Wie kann man die Seitenlaenge der Manualpages einstellen? Mit dem Schalter !man_lpp xx koennen Sie die Anzahl der Zeilen (xx) pro Seite angeben. Wie kann man den Programmtyp fuer die Kopfzeilen setzen Dafuer gibt es den Schalter !man_type X. "X" wird in der/den Kopfzeile/n in runden Klammern dargestellt. Wieso gibt UDO kein Inhaltsverzeichnis aus? Inhaltsverzeichnisse sind Manualpages sind mehr als unueblich. Bei kurzen Beschreibungen - und dafuer sind Manualpages gedacht - sind auch keine Inhaltsverzeichnisse noetig. A.5 Fragen zum LaTeX-Format ============================ Wie erzeugt UDO die LaTeX-Praeambel? UDO "weiss", in welcher Sprache und mit welchem Dokumentstil die Datei gesetzt und ob Indizes benutzt werden sollen. Anhand dieser bekannten Informationen bastelt UDO dann die Praembel fuer LaTeX 2.09 bzw. LaTeX2e zusammen. Wie werden Dateien fuer LaTeX2e erzeugt? Standardmaessig erzeugt UDO Dateien fuer LaTeX 2.09. Durch den Schalter !tex_2e koennen Sie UDO mitteilen, Befehle fuer LaTeX2e zu erzeugen. Ich benoetige eine eigene Praeambel, was muss ich tun? Um eine eigene Praembel fuer LaTeX verwenden zu koennen, muessen Sie im Vorspann den Schalter !no_preamble [tex] benutzen. Wie baue ich Formeln in den Quelltext ein? Benutzen Sie dazu die raw-Umgebung fuer ganze Absaetze oder Definitionen fuer Formeln, die im Fliesstext erscheinen sollen. Beispiel: !ifdest [tex] !define ab2 $(a+b)^2 = a^2 + 2ab + b^2$ !else !macro ab2 (a + b)^2 = a^2 + 2ab + b^2 !endif ... Die erste binomische Formel lautet: (!ab2) Wie werden Sonderzeichen in Indizes angepasst? Sonderzeichen in Indizes werden speziell fuer makeindex angepasst. Es sind also keine zusaetzlichen Anpassungen des von UDO erzeugten LaTeX-Files noetig. Geschweifte Klammern im Indexeintrag erzeugt LaTeX-Fehler!? Laut Kopka ist es zwingend erforderlich, dass jede oeffnende geschweifte Klammer in einem Indexeintrag eine passende schliessende geschweifte Klammer erhaelt. !index { ist demnach nicht moeglich, nur !index {...} funktioniert. A.6 Fragen zum Linuxdoc-SGML-Format ==================================== Dieses Format war mir bis Mitte Maerz 1996 voellig unbekannt. Dann fand ich darueber einen Artikel in der Zeitschrift "iX", habe diesen kurz durchgelesen, habe mir das Archiv gesaugt, die Dokumentation durchgelesen (zu einer Installation ist es mangels Linux-Rechner nicht gekommen) und dieses Format binnen zwei Stunden eingebaut. Mangels Testmoeglichkeiten war es mir nicht moeglich, zu ueberpruefen, ob UDO richtiges Linuxdoc-SGML erzeugt, ich habe mich allerdings strikt an die Vorgaben des User's Guide gehalten. Linuxdoc-SGML ist genau wie UDO ein Multiformat-Konverter, das auch sein eigenes Format in LaTeX, Manualpage, RTF, HTML, Texinfo etc. umwandeln kann. Nicht ganz ohne Stolz moechte ich aber darauf hinweisen, dass UDO gegenueber Linuxdoc-SGML 1.5 leistungsfaehiger und auch leichter zu begreifen ist. Allerdings kann sich das hier gesagte bei dem Entwicklungstempo, was man von der Linux-Szene kennt, sehr schnell aendern. Die xlist-Umgebung wird als description-Umgebung ausgegeben!? Beim Linuxdoc-SGML-Format ist eine xlist-Umgebung nicht vorgesehen. Daher wird diese Umgebung hier als description- Umgebung behandelt, welche der xlist-Umgebung am aehnlichsten ist. Linuxdoc-SGML bemaengelt Å!? Fuegen Sie in der Datei /usr/lib/linuxdoc-sgml/rep/html/general folgende Zeile ein: A.7 Fragen zum Pure-C-Help-Format ================================== Das Pure-C-Help-Format wird lediglich fuer Pure C, einem Compiler fuer den Atari ST, als Hilfesystem verwendet. Ansonsten hat es keine Bedeutung mehr fuer diesen Rechner. Wie erzeugt UDO hier Titelseite und Inhaltsverzeichnis? UDO erzeugt eine Seite mit den Titelangaben und dem Inhaltsver- zeichnis. Da diese Seite bei umfangreicheren Dokumenten ziemlich lang werden kann, empfiehlt es sich, den Schalter !use_short_toc [pch] im Zusammenhang mit den Schaltern !use_auto_subtocs [pch] und !use_auto_subsubtocs [pch] zu benutzen, damit auch Programmierer mit kleinen Bildschirmen nicht den Ueberblick auf dieser Seite zu verlieren. Wie kann ich bei Pure-C-Help die Kopfzeilen entfernen? UDO erzeugt auf jeder Seite automatisch Kopfzeilen, gebildet aus der Ueberschrift der jeweiligen Seite sowie des Titels der Hilfedatei. Durch Anklicken des Titels kann man zur Titelseite bzw. zum Inhaltsverzeichnis verzweigen. Durch den Schalter !no_headlines [pch] laesst sich die Ausgabe dieser Kopfzeilen unterbinden. Und wie die Fusszeilen? UDO erzeugt auf jeder Seite automatisch Fusszeilen, in denen Verweise auf das vorherige, nachfolgende und/oder uebergeordnete Kapitel zu finden sind. Diese ermoeglichen dem Leser, direkt zu anderen Kapiteln des Textes zu verzweigen. Durch den Schalter !no_bottomlines [pch] laesst sich die Ausgabe dieser Kopfzeilen unterbinden. Wofuer ist diese Datei mit der Endung .cmd? UDO legt waehrend der Umwandlung eine Kommandodatei fuer den Helpcompiler von Pure C an, welche an diesen zur Erzeugung der Helpdatei als Kommando uebergeben werden muss. UDO ueberschreibt diese Kommandodatei ohne Rueckfrage. Um manuelle Aenderungen an dieser Datei zu bewahren, muessen Sie die Datei schreibschuetzen. Wie erzeuge ich eine Hilfedatei fuer Pure C? Bei der Umwandlung des Quelltextes foo.u erzeugt UDO die Dateien foo.scr und foo.cmd. Um eine Hilfedatei fuer Pure C zu erhalten, muessen Sie HC.TTP starten und diesem Programm die Kommandodatei foo.cmd uebergeben: $ e:\purec\hc.ttp foo.cmd Unter GEM ziehen Sie einfach die Datei foo.cmd auf HC.TTP. Wie benutzt ich die Hilfedatei mit Pure C? Pure C erlaubt (leider) nur die Einbindung einer einzigen benutzerdefinierten Hilfedatei. Diese traegt den Namen USR.HLP und befindet sich im Pure-C-Ordner. Um eine eigene Hilfedatei zu benutzen, sichern Sie die alte Hilfedatei (z.B. durch Umbenennen in USR.HLX) und kopieren Sie die eigene, in USR.HLP umbenannte Hilfedatei in den Pure-C- Ordner. A.8 Fragen zum Rich Text Format ================================ Das Rich Text Format (kurz: RTF) dient zum systemweiten Austausch von Texten. Dieses Format hat eine klare Definition und kann laufend um neue Kommandos erweitert werden. Trifft ein Programm auf einen unbekannten RTF-Befehl, so ist dieser zu ignorieren. Leider handeln nicht alle Programme so, sondern interpretieren irgendwelchen Unsinn. Selbst Microsoft Word scheint das im eigenen Hause entwickelte Format nicht ganz zu verstehen. Somit kann durchaus gesagt werden, dass das RTF das am meisten missverstandende Format ist, dass derzeit existiert! Wieso erzeugt UDO beim RTF kein Inhaltsverzeichnis? Sicherlich moechten Sie oder jemand anderes die RTF-Datei mit einer Textverarbeitung ausdrucken und dann auch wissen, auf welcher Seite ein Kapitel zu finden ist. Und weil UDO nicht wissen kann, auf welcher Seite spaeter ein Kapitel zu finden ist, erzeugt es kein Inhaltsverzeichnis. Sicher, es waere kein Problem, dieses auszugeben, allerdings wuerden dann die Seitennummern fehlen, und ich kann mir kaum vorstellen, dass dies gewuenscht wird. Wieso kann UDO keine Bilder in ein RTF-File einbinden? Bisher habe ich nicht die Spur einer Ahnung, wie Bilder in RTF- Dateien eingebunden werden. Ich kenne zwar die noetigen Befehle, aber wie die Bilddaten kodiert werden, das entzieht sich meiner Kenntnis. Sobald ich die noetigen Informationen gefunden (und begriffen) habe, werden auch Bilder unterstuetzt. Meine Textverarbeitung zeigt nur Muell an!? Tja, dann haben Sie halt Pech gehabt, denn UDO erzeugt RTF- Dateien, die sich strikt an die RTF-Definition halten. Falls es moeglich ist, Kontakt zu den Autoren der Textverarbeitung aufzunehmen, schicken Sie denen die RTF-Datei und verlangen Sie Besserung. Uebrigens: Dies habe ich schon selbst versucht, aber bis auf Herrn Christian Nieber von R.O.M.-Logicware (Papyrus) hat mir niemand Beachtung geschenkt. Traurig! Die Umlaute kommen beim RTF nicht richtig an? UDO erzeugt RTF-Dateien, die den Windows-ANSI-Zeichensatz benutzen. Jede Textverarbeitung sollte mit Dateien klarkommen, die im PC-, ANSI- und Mac-Zeichensatz erstellt wurden. Dies ist kein Problem von UDO, sondern ebenfalls von der benutzten Textverarbeitung. Die Anfuehrungszeichen werden falsch dargestellt? UDO benutzt zur Darstellung der doppelten Anfuehrungszeichen und Apostrophe die RTF-Befehle \lquote, \rquote, \rdblquote und \ldblquote. Die Textverarbeitung ist fuer die Umsetzung dieser gebraeuchlichen RTF-Befehle in die korrekten Zeichen zustaendig. Falls Ihre Textverarbeitung diese Befehle nicht kennt, so koennen Sie die Benutzung dieser Befehle bei der Konvertierung durch den Schalter !no_quotes [rtf] unterbinden. Meine Textverarbeitung stellt Tabellen nicht dar? Falls Ihre Textverarbeitung keine RTF-Tabellen-Befehle kennt, koennen Sie mit dem Schalter !rtf_ascii_tables dafuer sorgen, dass UDO die Tabellen wie beim ASCII-Format ausgibt. StarWriter 3.0 meldet einen RTF-Fehler!? StarWriter 3.0 scheint nicht alle RTF-Befehle zu kennen und bemaengelt sogar korrekte RTF-Tags. Setzen Sie sich mit Star Division in Verbindung. Die Indizes werden nicht von StarWriter 3.0 importiert!? StarWriter 3.0 versteht das RTF-Tag \xe nicht, welches fuer das Einbauen von Indizes zustaendig ist. Lotus WordPro plaziert Kapitelnummern ausserhalb des Textrahmens!? Tja, wenn ich wuesste, was WordPro sich dabei denkt, dann koennte ich etwas dazu sagen. Andere Textverarbeitungen stellen die Kapitelnummern korrekt dar. Lotus WordPro formatiert Tabellen und folgenden Text falsch!? Lotus WordPro bekommt aus mir unerfindlichen Gruenden das Ende einer Tabelle nicht mit. Die Tabelle selbst wird ebenso nicht korekt dargestellt. Abhilfe: Verwenden Sie den Schalter !rtf_ascii_tables und wenden Sie sich an Lotus. Das WordPad von Win95 stellt Tabellen nicht dar!? WordPad kann keine Tabellen darstellen. Verwenden Sie den Schalter !rtf_ascii_tables. A.9 Fragen zum ST-Guide-Format =============================== Warum erscheinen Bilder bei mir nicht zentriert? Beschaffen Sie sich die aktuelle ST-Guide-Version. ST-Guide Release 15 kann Bilder selbstaendig zentrieren. Wie werden die Titelseite und das Inhaltsverzeichnis erzeugt? Titelseite und Inhaltsverzeichnis werden jeweils auf einer eigenen Seite dargestellt. Die Titelseite hat dabei den Namen "Titel", dem Inhaltsverzeichnis wird dabei der primaere Name "Main" zugewiesen. Um den ST-Guide die erste Seite des Hypertextes (was meistens die Titelseite sein wird) darstellen zu lassen, uebergibt man einfach den Namen des erzeugten Hypertextes. Um das Inhaltsverzeichnis darzustellen, uebergibt man zusaetzlich "Main". Wie man dem ST- Guide mitteilt, welche Seite welchen Hypertextes anzuzeigen ist, findet man in der Beschreibung zum HCP. Wie entferne ich die Kopfzeilen? UDO erzeugt standardmaessig auf jeder Seite eine Kopfzeile, gebildet aus dem Titel und dem Namen des im Hypertext besproche- nen Programms. Die Kopfzeilen werden unterstrichen dargestellt. Durch den Schalter !no_headlines [stg] laesst sich die Ausgabe dieser Kopfzeilen unterbinden. Wie wird beim ST-Guide referenziert? Die Referenzierung wird fast komplett dem HCP des ST-Guide ueberlassen. Lediglich bei den manuell gesetzten Links durch die Befehle (!link ...) und (!xlink ... setzt UDO explizite Querverweise auf andere Kapitel oder Labels. Wie werden Labels umgesetzt? UDOs Befehl !label wird in den HCP-Befehl "@symbol ari" umgesetzt. Dabei ist zu beachten, dass noch kein anderes Kapitel oder Label mit gleichem Namen existiert, da der HCP dies bemaengeln wuerde. Labels werden (wie bei den anderen Formaten auch) automatisch referenziert und gelangen darueber hinaus auch in den Index des Hypertextes. Wie koennen Popup-Nodes erzeugt werden? Durch die Befehle !pnode etc. koennen Kapitel im ST-Guide als Popups dargestellt werden. Dabei ist folgendes zu beachten: Beim ST-Guide duerfen in einem Popup lediglich 12 Zeilen mit maximal 60 Zeichen stehen. Ausserdem duerfen in einem Popup keine Bilder oder Verweise benutzt werden. UDO bricht Zeilen eines Popup-Nodes auf 60 Zeichen um, achtet aber nicht darauf, ob man zuviele Zeilen, Verweise oder Bilder benutzt hat. In den Popup-Nodes steht am Ende immer eine Leerzeile, wieso? UDO bearbeitet einen Quelltext Zeile fuer Zeile. Beim Auftreten einer Leerzeile oder eines Kommandos wird der letzte Absatz samt einer zusaetzlichen Leerzeile ausgegeben. Dies ist auch bei den Popup-Nodes nicht anders. Das Problem laesst sich leider nicht loesen. In Tabellen sind manche Zellen verschoben, warum? Der ST-Guide besitzt eine eingebaute Italic-Korrektur, die leider auch bei Tabellen zuschlaegt und Leerzeichen einfuegt. Das ist ein Problem des ST-Guide und kann nur von dessen Autor, Holger Weets, geaendert werden. Man sollte daher bei Tabellen, die fuer den ST-Guide eingesetzt werden, moeglichst auf Kursivschrift verzichten, solange es keine neuere ST-Guide-Version gibt. Der HCP meldet mir den Fehler "please add..."? Falls der HCP die Fehlermeldung "please add a @subject-command to this text" am Ende der Uebersetzung des erzeugten ST-Guide- Quelltextes erzeugt, so haben Sie vergessen, im Vorspann des UDO-Quelltextes folgenden ST-Guide-Spezialbefehl anzugeben: !stg @subject "..." Anstelle der Punkte muessen Sie die Rubriken angegeben werden, in die ein Hypertext eingeordnet werden kann. Bei einem kleinen Tool geben Sie z.B. "Dokumentation/Utilities" an. Weitere Informatio- nen zu diesem Thema findet man in der Dokumentation des ST-Guide. A.10 Fragen zum Texinfo-Format =============================== Texinfo hat in der GNU-Welt eine groessere Bedeutung. Texte, die im Texinfo-Format erstellt werden, koennen mit Plain-TeX als sauber gesetzte Anleitung ausgedruckt werden bzw. mit `Makeinfo' in einen Hypertext umgewandelt werden, welchen man sich mit `Info' anzeigen kann. UDO erzeugt auf Systemen, auf denen nur ein 8+3-Dateisystem zur Verfuegung steht, die Dateiendung .tex. Stehen lange Dateinamen zur Verfuegung, wird .texi benutzt. Warum werden bei Texinfo die Kapitelnamen veraendert? Makeinfo oder Info bekommen Probleme, falls im Namen eines Kapitels Sonderzeichen wie Klammern, Kommata oder (Doppel-)Punkte auftauchen. UDO entfernt daher diese Sonderzeichen. Falls ein Kapitelname nur Sonderzeichen enthaelt, so werden die Zeichen des Namens in kodierter Form ausgegeben. Formatiert man das Texinfo-File mit TeX, so tauchen diese Sonder- zeichen in den Kapitelueberschiften selbstverstaendlich auf. Warum werden Umgebungen nicht "komprimierte" dargestellt? Der Parameter !short kann bei Texinfo nicht funktionieren, da es bei Texinfo nicht moeglich ist, die Zwischenraeume in Umgebungen zu unterdruecken. A.11 Fragen zum Turbo-Vision-Help-Format ========================================= Dieses Format wird benutzt, um Onlinehilfen fuer DOS-Programme zu erstellen, die mit Borlands Turbo-Vision-Library geschrieben wurden. Zustaendiger Konverter ist das Programm TVHC.EXE, das den Entwick- lungssystemen auch im Sourcecode beiliegt. Da das Turbo-Vision-Help-Format wohl nur fuer Programmierer interessant sein duerfte, werden hier auch einige Tips gegeben, wie man den TVHC patchen sollte. Nichtprogrammierer sollten dieses Format meiden, sprich Ihre Hypertexte nicht in diesem Format weitergeben, da es ausserhalb der Erstellung von Onlinehilfen fuer eigene Programme keine Bedeutung hat. TVHC meldet den Fehler "Unterminated topic reference"!? Der mir vorliegende TVHC Version 1.0 beinhaltet einen boesen Fehler, der dazu fuehrt, dass die Quotefunktion - das Aufheben der Funktion der geschweiften Klammr durch doppelte Angabe - nicht funktioniert. Falls der TVHC Ihnen die obige Fehlermeldung praesentiert, so aendern Sie den Sie die Funktion scanForCrossRefs() in tvhc.cpp folgendermassen um: Original: if (line[i+1] == begXRef) { strdel(line, i, 1); ++i; } Patch: if (line[i] == begXRef) // [i] statt [i+1] { strdel(line, i, 1); ++i; } Nach dieser Aenderung sollten Sie den TVHC neu uebersetzen, um die Aenderungen wirksam werden zu lassen. TVHC meldet den Fehler "Text too long"!? In der Datei tvhc.h legt eine Konstante namens bufferSize die Groesse des Textpuffers fest, den der TVHC als Zwischenspeicher waehren der Uebersetzung benutzt. Der Puffer ist ziemlich klein dimensioniert, falls Sie obige Fehlermeldung erhalten. Legen Sie einen ausreichen grossen Puffer (z.B. 32 KB) an, so dass auch groessere Texte problemlos uebersetzt werden. const bufferSize = 32768; Nach dieser Aenderung sollten Sie den TVHC neu uebersetzen, um die Aenderung wirksam werden zu lassen. TVHC meldet den Fehler "TOPIC expected"!? Dieser Fehler tritt auf, sobald eine Zeile mit einem Punkt - dem "commandChar" - beginnt. Die mir vorliegende Version bricht darauf die Umwandlung ab. Dieser Abbruch ist jedoch unnoetig, weshalb ich meinen TVHC gepatched habe. Falls Sie den Sourcecode vorliegen haben, suchen Sie nach error("TOPIC expected"); und ersetzen Sie es durch warning("TOPIC expected"); Nach eine Neuuebersetzung des TVHC bricht dieser die Umwandlung nicht mehr ab, sondern gibt lediglich eine Warnmeldung aus, die Sie ignorieren koennen. A.12 Fragen zum WinHelp-Format =============================== WinHelp meint, dass *.rtf und *.hpj keine Hilfedatei sei? Weder die eine noch die andere Datei ist eine fertige Hifedatei fuer Windows. UDO erzeugt lediglich die Quelltexte einer Hilfedatei, welche noch mit einem Hypertext-Compiler (HC.EXE, HC31.EXE, HCP.EXE) uebersetzt werden muss. Woher bekomme ich den Hypertext-Compiler? Den Hypertext-Compiler HC31.EXE bekommen Sie ueberall dort, wo es auch UDO gibt (siehe Bezugsquellen). Sie finden ihn auch auf dem FTP-Server von Microsoft (ftp.microsoft.com). Warum will der HC einfach keine HLP-Datei erzeugen? Dafuer kann es zwei Gruende geben: 1. Der UDO-Quelltext beinhaltet Fehler. Schauen Sie sich also zunaechst die Fehlermeldungen von UDO in der Datei mit der Endung .ulw an, beseitigen Sie etwaige Fehler und konvertie- ren Sie dann den UDO-Quelltext neu. Falls UDO keine Fehlermeldungen ausgibt, so kann es dennoch sein, dass der Quelltext Fehler enthaelt, UDO diese Fehler aber nicht erkannt hat. 2. Der HC macht Murks. Beachten Sie das Errorfile mit der Endung .err, welches vom HC angelegt wird. Leider kann ich keine Hilfestellung zu den Fehlermeldungen des HC geben, da ich in den meisten Faellen selbst nicht weiss, was da schieflaeuft. Wofuer ist die Datei mit der Endung `hpj'? UDO erzeugt automatisch eine zum Hypertext gehoerende Projektdatei mit der Endung .hpj, die dem HC uebergeben werden muss, um aus dem Quelltext eine fertige WinHelp-Datei zu erstellen. In dieser Projektdatei befinden sich Informationen wie der Titel des Hypertextes, die zusaetzlichen Schaltflaechen, die Ausmasse des Fensters nach dem Oeffnen des Hypertextes etc. UDO ueberschreibt vorhandene Projektdateien ohne Rueckfrage. Wenn Sie manuelle Aenderungen an einer Projektdatei vorgenommen haben und diese beibehalten moechten, so schreibschuetzen Sie die Projektdatei. Wie werden hier die Kopfzeilen erzeugt? UDO erzeugt auf jeder Seite (mit Ausnahme der Titelseite und des Inhaltsverzeichnisses) eine Kopfzeile. In dieser befindet sich der Name des jeweiligen Kapitels. Kopfzeilen werden als "non- scrolling-regions" angelegt, so dass man auch nach dem Scrollen der Seite immer noch den Kapitelnamen erkennen kann. Durch den Schalter "!no_headlines [win]" wird die Ausgabe von Kopfzeilen unterdrueckt. Wie werden die Kontextstrings ermittelt? Falls Sie von anderen WinHelp-Files auf ein mit UDO erzeugtes WinHelp-File verzweigen moechten, muessen Sie den Kontextstring des Kapitels kennen. WinHelp erlaubt in Kontextstrings keine Sonderzeichen. UDO wandelt daher die Namen der Kapitel folgendermassen in Kontext- strings um: 1. Zunaechst werden wie sonst auch Sonderzeichen durch die RTF-Schreibweise ersetzt. 2. Leerzeichen werden in Unterstriche umgewandelt. 3. Alle anderen Zeichen (ausgenommen Ziffern und die Buchstaben des Alphabets) werden durch Ihren hexadezimalen Wert in grosser Schreibweise mit einem vorangehenden Unterstrich ersetzt. Ein Beispiel: UDO: !node LaTeX-EinfÏhrung Teil 1 WinHelp: #{footnote # LaTeX_2DEinf_5C_27FChrung_Teil_1} Erlaeuterungen: 1. Das Minuszeichen entspricht ASCII "0x2D", daher wird es durch "_2D" ersetzt. 2. Das "ue" in Einfuehrung lautet in RTF-Schreibweise "\'FC." "\" entspricht "0x5C", wird also durch "_5C" ersetzt. "'" enspricht "0x27", wird also durch "_27" ersetzt. 3. Die Leerzeichen werden durch "_" ersetzt. Siehe sehen, dass aus einem "ue" die ziemlich lange Zeichenfolge "_5C_27FC" wird. Dies scheint auf den ersten Blick mehr als umstaendlich und "doppelt gemoppelt" zu sein, bringt aber den Vorteil, dass die Vergabe von gleichen Kontextstrings bei aehnlichen Kapitelnamen ziemlich unwahrscheinlich wird. Wuerde aus dem "ue" lediglich "FC" gemacht, waeren Probleme vorprogrammiert. Warum werden Tabellen nicht zentriert? Entweder ist dies wirklich nicht moeglich, Tabellen zentriert auszugeben, oder aber ich habe bei meiner viertaegigen Suche die entscheidende Moeglichkeit uebersehen. Warum werden in Tabellen keine Linien angezeigt? Die Tabellenfunktionen von WinHelp sind ziemlich mager. So ist es unmoeglich, Linien frei in einer Tabelle zu plazieren. Es ist nur moeglich, jede Tabellenzelle mit oder ohne Rahmen darzustellen. Warum sind die Einrueckungen bei Listen und Tabellen so gross? UDO kennt die Zeichenbreiten der benutzten Zeichensaetze nicht. Daher benutzt es einen konstanten Wert fuer jedes Zeichen. Damit ist die Einrueckung auch bei kursiver fetter Grossschrift passend, bei reiner Proportionalschrift ist die Einrueckung und auch die Breite der Tabellenspalten etwas zu gross, was jedoch eher zu verschmerzen ist, als eine zu geringe Einrueckung oder Spaltenbreite. Wie kann ich DOS-Grafikzeichen darstellen? Leider gar nicht. WinHelp weigert sich, die Fonts "Terminal" und "MS LineDraw" zur Anzeige des Textes zu verwenden. Stattdessen benutzt WinHelp einen Ersatzfont aus der Roman-, Script- oder Symbol-Familie, die leider alle keine DOS-Grafikzeichen enthalten. UDO ersetzt daher DOS-Grafikzeichen durch die ASCII-Zeichen "+", "-" und "|", um z.B. DOS-Screenshots halbwegs realistisch darzustellen. ====================================================================== Anhang B Bugs ====================================================================== Die folgenden Fehler sind derzeit bekannt und werden bald beseitigt: Schriftarten in Indizes: In Indizes koennen derzeit keine Schriftarten gesetzt werden. Abhilfe: Setzen Sie die Schriftarten-Platzhalter ausserhalb des (!idx ...)-Befehls. Bilder & emTeX: Die Ausgabe von MSP- und PCX-Bitmaps mittels emTeX ist immer noch ziemlich ungetestet. Erste Tests verliefen bei mir erfolgreich. Falls die Ausgabe bei Ihnen nicht funktionieren sollte, so verwenden Sie das Kommando !no_images [tex] und sorgen Sie mit der raw-Umgebung bitte selber fuer die noetige Einbindung der Bilder. Kleine Fehler bei der Formatierung in WinHelp: Wenn viele Kapitel benutzt werden und die Kapitelnummern "breit" werden, kann es zu falschen Einrueckungen in den Inhaltsverzeichnissen kommen. Benutzen Sie dann den Schalter !no_numbers [win]. Inhaltsverzeichnisse: In Inhaltsverzeichnissen werden ueberlange Ueberschriften noch nicht umbrochen. Ausserdem werden die Ueberschriften nicht immer in der gleichen Spalte ausgerichtet ("1.9"-"1.10"-Problem). Tabellen: Die Breite von Zellen einer Tabelle wird nicht immer sicher erkannt, speziell dann, wenn man darin manuelle Querverweise oder andere Spezialitaeten verwendet. Falls Sie einen weiteren Fehler entdeckt haben sollten, so melden Sie ihn mir (siehe "Kontaktadresse") bitte. Vergessen Sie dabei bitte nicht, mir die folgenden Dinge mitzuteilen: o Welche UDO-Version verwenden Sie? o Welches Betriebssystem setzen Sie ein? o Tritt der Fehler immer auf oder nur manchmal? o Woran koennte es Ihrer Meinung liegen, dass UDO fehlerhaft arbeitet? o Koennen Sie mir ein kurzes Beispiel nennen, bei dem der beobach- tete Fehler auftritt? o Falls der Fehler umwandlungstechnischer Art ist, was sollte UDO Ihrer Meinung nach anstelle der derzeitigen Ausgabe erzeugen? ====================================================================== Anhang C Fehlermeldungen ====================================================================== UDO protokolliert in einer Datei, welche die Endung .ul? besitzt, Fehler, die bei der Umwandlung aufgetreten sind. Die Fehlermeldungen, Warnungen und Hinweise haben dabei immer folgenden Aufbau: Error: : Warning: : Hint: : Zur Beseitigung dieser Fehlermeldung schauen Sie sich in der angegebe- nen Datei die betroffene Zeile an und versuchen Sie, den angegeben Fehler zu lokalisieren und zu korrigieren. Beginnen Sie dabei mit der Korrektur des ersten Fehlers jeder angegebenen Datei und wandeln Sie die Quelldatei neu um, da manche Fehlermeldungen auf vorhergehende Fehler zurueckzufuehren sind. `...' called twice Das angegebene Kommando taucht zweimal oder sogar noch oefters in Ihrem Quelltext auf, darf aber nur einmalig benutzt werden. `...' expected UDO hat den angegebenen Befehl erwartet. Ueberpruefen Sie, ob jede geoeffnete Umgebung mit dem richtigen Befehl beendet wurde oder ob vielleicht ein !begin_* fehlt. `...' followed by `...' Eine Umgebung wurde mit einem falschen Befehl beendet. Entweder haben Sie den falschen Befehl zur Beedigung einer Umgebung vergessen oder falsch positioniert. `...' ignored inside preamble Das angegebene Kommando ist im Vorspann nicht erlaubt. Sorgen Sie dafuer, dass es nach !begin_document angegeben wird oder loeschen Sie das Kommando. `...' ignored outside preamble Das angegebene Kommando ist im Hauptteil nicht erlaubt. Sorgen Sie dafuer, dass es vor !begin_document angegeben wird oder loeschen Sie das Kommando. `...' maybe not available in LaTeX Das angegebene Zeichen ist sehr wahrscheinlich nicht von LaTeX darstellbar. Verzichten Sie besser auf das angegebene Zeichen. `...' not active Eine Schriftart oder Fussnote sollte beendet werden, obwohl Sie noch gar nicht begonnen wurde. Beachten Sie, dass die Platzhalter mit Grossbuchstaben eine Schriftart oder Fussnote beginnen, wogegen Platzhalter mit Kleinbuchstaben sie beenden. `...' not available in ISO Latin 1 Das angegebene Zeichen ist im ISO-Latin-1-Zeichensatz nicht definiert. UDO kann dieses Zeichen demnach nicht umwandeln. `...' not available in this charset Das angegebene Zeichen ist im Systemzeichensatz nicht vorhanden und kann demnach nicht dargestellt werden. Weichen Sie, falls moeglich, auf andere Zeichen aus. `...' still active Eine Schriftart oder Fussnote soll begonnen werden, obwohl sie noch aktiv ist. Entweder fehlt vor der Stelle, an dem dieser Fehler auftritt, der Platzhalter zur Beendigung der Schriftart bzw. Fussnote oder Sie haben sich verschrieben. `...' without `...' Sie haben eine Umgebung beendet, obwohl sie noch gar nicht begonnen wurde. Entweder ist das Ende-Kommando ueberfluessig, oder aber das Anfangskommando fehlt. !else without !if In Ihrem Quelltext steht !else, ohne dass Sie mit !if, !ifdest etc. eine Abfrage begonnen haben. !endif without !if In Ihrem Quelltext steht !endif, ohne dass Sie mit !if, !ifdest etc. eine Abfrage begonnen haben. `!item' outside environment Sie haben einen Aufzaehlungspunkt ausserhalb einer Aufzaehlung, Numerierung, Beschreibung oder Liste eingesetzt. Sorgen Sie dafuer, dass der Punkt innerhalb einer solchen Umgebung steht. check this paragraph UDO zeigt Ihnen den Dateinamen und die Zeilennummer, wo sie einen Fehler korrigieren sollten. couldn't open (pass1) Im ersten der beiden Durchgaenge konnte UDO die angegebene Datei nicht oeffnen. couldn't open (pass2) Im zweiten der beiden Durchgaenge konnte UDO die angegebene Datei nicht oeffnen. Ueberpruefen Sie bitte den Dateinamen, den Sie bei einem Include-Befehl angegeben haben, loeschen Sie das Include- Kommando oder kommentieren Sie es. couldn't open destination file UDO kann die angegebene Datei nicht oeffnen. Ueberpruefen Sie den Dateinamen oder entfernen Sie den Schreibschutz der Datei, falls Sie bereits existiert. couldn't open hypfile UDO kann die angegebene Datei nicht oeffnen. Ueberpruefen Sie den Dateinamen oder entfernen Sie den Schreibschutz der Datei, falls Sie bereits existiert. couldn't open logfile UDO kann die angegebene Datei nicht oeffnen. Ueberpruefen Sie den Dateinamen oder entfernen Sie den Schreibschutz der Datei, falls Sie bereits existiert. couldn't open source file UDO kann die angegebene Datei nicht oeffnen. Ueberpruefen Sie den Dateinamen. couldn't open treefile UDO kann die angegebene Datei nicht oeffnen. Ueberpruefen Sie den Dateinamen oder entfernen Sie den Schreibschutz der Datei, falls Sie bereits existiert. couldn't read BMP header Entweder ist die angegebene Datei nicht vorhanden oder aber es handelt sich nicht um eine Grafik im BMP-Format. Stellen Sie sicher, dass die Datei vorhanden ist und das es sich um das richtige Grafikformat handelt. couldn't read IMG header Entweder ist die angegebene Datei nicht vorhanden oder aber es handelt sich nicht um eine Grafik im IMG-Format. Stellen Sie sicher, dass die Datei vorhanden ist und das es sich um das richtige Grafikformat handelt. couldn't read MSP header Entweder ist die angegebene Datei nicht vorhanden oder aber es handelt sich nicht um eine Grafik im MSP-Format. Stellen Sie sicher, dass die Datei vorhanden ist und das es sich um das richtige Grafikformat handelt. couldn't read PCX header Entweder ist die angegebene Datei nicht vorhanden oder aber es handelt sich nicht um eine Grafik im PCX-Format. Stellen Sie sicher, dass die Datei vorhanden ist und das es sich um das richtige Grafikformat handelt. couldn't replace (!ilink ...) Ein manueller Link mit einem "fliessendes" Bild konnte nicht ersetzt werden. Innerhalb eines Absatzes sind lediglich 200 interne und externe Querverweise sowie Querverweise auf Seiten und "fliessende" Bilder moeglich. Teilen Sie den Absatz, in dem dieser manuelle Querverweis benutzt werden soll in zwei Haelften oder entfernen Sie ein paar manuelle Querverweise. couldn't replace (!img ...) Ein "fliessendes" Bild konnte nicht ersetzt werden. Innerhalb eines Absatzes sind lediglich 200 interne und externe Querverwei- se sowie Querverweise auf Seiten und "fliessende" Bilder moeglich. Teilen Sie den Absatz, in dem dieser manuelle Querver- weis benutzt werden soll in zwei Haelften oder entfernen Sie ein paar manuelle Querverweise. couldn't replace (!link ...) Ein manueller interner Querverweis konnte nicht ersetzt werden. Innerhalb eines Absatzes sind lediglich 200 interne und externe Querverweise sowie Querverweise auf Seiten und "fliessende" Bilder moeglich. Teilen Sie den Absatz, in dem dieser manuelle Querverweis benutzt werden soll in zwei Haelften oder entfernen Sie ein paar manuelle Querverweise. couldn't replace (!xlink ...) Ein manueller externer Querverweis konnte nicht ersetzt werden. Innerhalb eines Absatzes sind lediglich 200 interne und externe Querverweise sowie Querverweise auf Seiten und "fliessende" Bilder moeglich. Teilen Sie den Absatz, in dem dieser manuelle Querverweis benutzt werden soll in zwei Haelften oder entfernen Sie ein paar manuelle Querverweise. couldn't write IMG header UDO konnte die angegebene Datei nicht oeffnen, um die Bildinfor- mationen zu aendern. Entweder ist diese Datei nicht vorhanden oder sie ist schreibgeschuetzt. definition contents longer than ... characters Der Inhalt einer Definition darf maximal die angegebene Anzahl an Zeichen enthalten. Die in Ihrem Quelltext benutzte Definition beinhaltet mehr Text und muss daher gekuerzt werden. definition name longer than ... characters Der Name einer Definition darf maximal die angegebene Anzahl an Zeichen enthalten. Die in Ihrem Quelltext benutzte Definition hat einen laengeren Namen und muss daher gekuerzt werden. language ... not supported Die von Ihnen gewuenschte Sprache wird von UDO noch nicht unterstuetzt oder Sie haben sich einfach nur verschrieben. link destination undefined Das Ziel eines manuellen Querverweises ist nicht definiert, sprich es existiert kein Kapitel und kein Label mit einem solchen Namen. macro contents longer than ... characters Der Inhalt eines Makros darf maximal die angegebene Anzahl an Zeichen enthalten. Das in Ihrem Quelltext benutzte Makro beinhaltet mehr Text und muss daher gekuerzt werden. macro name longer than ... characters Der Name eines Makros darf maximal die angegebene Anzahl an Zeichen enthalten. Das in Ihrem Quelltext benutzte Makro hat einen laengeren Namen und muss daher gekuerzt werden. memory allocation failed UDO konnte den fuer eine Aktion noetigen Speicher nicht anfordern. UDO bricht die Umwandlung nicht ab, jedoch sollten Sie die Ausgabedatei sehr skeptisch betrachten. Sorgen Sie vor der naechsten Umwandlung dafuer, dass mehr Arbeitsspeicher vorhanden ist. missing parameter(s) Bei einem Befehl wurden noetige Informationen nicht angegeben. Ueberpruefen Sie den Befehl und fuegen Sie die fehlenden Informa- tionen ein. odd number of '' Ihr Quelltext besitzt eine ungerade Anzahl an doppelten Apostrophen. UDO stellt diesen Mangel erst am Ende eines Kapitels fest. Kontrollieren Sie daher das Kapitel oberhalb der von UDO angegebenen Zeilennummer. odd number off "" Ihr Quelltext besitzt eine ungerade Anzahl an doppelten Anfuehrungszeichen. UDO stellt diesen Mangel erst am Ende eines Kapitels fest. Kontrollieren Sie daher das Kapitel oberhalb der von UDO angegebenen Zeilennummer. overfull line Eine Zeile einer verbatim-Umgebung ist laenger als die einge- stellte Zeilenbreite. Versuchen Sie, diese Zeile zu kuerzen oder stellen Sie mit !parwidth eine groessere Zeilenbreite ein. source and destination file are equal Sie haben versucht, eine Datei "in sich selbst" umzuwandeln. Uebergeben Sie UDO die richtigen Dateinamen in der Kommandozeile. string buffer overflow Bitte verstaendigen Sie den Autor. too many aliases used Ihr Quelltext benutzt zu viele !alias-Befehle. Verzichten Sie auf unwichtige Aliase oder schreiben Sie dem Autor, dass Sie eine Spezialversion von UDO benoetigen. too many columns used Ihr Quelltext benutzt in einer Tabelle zuviele Spalten. too many defines used In Ihrem Quelltext werden mehr als 128 Definitionen benutzt. too many environments used In Ihrem Quelltext wurde die maximale Schachtelungstiefe fuer Umgebungen ueberschritten. Versuchen Sie, Ihren Text einfacher zu gestalten. too many files opened Zuviele Dateien waren waehrend der Umwandlung gleichzeitig geoeffnet. Untersuchen Sie Ihren Quelltext daraufhin, ob !include rekursiv verwendet wird. too many hyphens used Ihr Quelltext verwendet zuviele globale Trennvorschlaege. Entfernen Sie die unwichtigsten und benutzen Sie lokale Trennvorschlaege. too many items inside enumeration In einer enumerate-Umgebung, die mit Buchstaben gekennzeichnet wird, wurden zuviele Aufzaehlungspunkte eingesetzt. Reduzieren Sie die Anzahl der Punkte auf 26 oder benutzen Sie anstelle der enumerate-Umgebung eine itemize-Umgebung. too many labels used Ihr Queltexte verwendet zuviele Sprungmarken. Da UDO Kapitel und Aliase intern auch als Sprungmarken verwendet, kann diese Fehlermeldung auch bei nur wenigen benutzten Labels auftreten, wenn viele Kapitel benutzt werden. Abhilfe: Verzichten Sie auf einige Labels oder Aliase oder bestellen Sie beim Autor eine Spezialversion. too many macros used In Ihrem Quelltext werden mehr als 128 Makros benutzt. too many nodes used In Ihrem Quelltext werden zuviele Kapitel verwendet. Falls moeglich, versuchen Sie einige Kapitel zusammenzufassen. Falls dies icht moeglich ist, fordern Sie beim Autor eine Spezialversion von UDO an. too many parameters used Bei einem Befehl oder Platzhalter wurden zuviele Parameter uebergeben. Lesen Sie bitte im Befehlsindex nach, welche und wieviele Parameter dem angegebenen Befehl uebergeben werden muessen und korrigieren Sie Ihren Quelltext. too many rows used Ihr Quelltext benutzt in einer Tabelle zuviele Zeilen. too many words used inside paragraph In einem Absatz wurden zuviele Woerter benutzt. Teilen Sie den Absatz in zwei Haelften, um diese Fehlermeldung zu beseitigen. underfull line Die angegebene Zeile ist zu kurz und hinterlaesst einen stark ungleichmaessigen rechten Rand. Bei der Benutzung von Blocksatz bedeutet diese Meldung, dass zuviele Leerzeichen in eine Zeile eingefuegt werden mussten, um den Blocksatz zu erzielen. Versuchen Sie, in den folgenden Woertern Trennmarken einzubauen oder verwenden Sie den Befehl !sloppy, um diese Fehlermeldung nicht mehr zu erhalten. unexpected end of line in command Ihr Quelltext benutzt einen Platzhalter, dessen Text sich ueber mehrere Zeilen erstreckt oder dessen Ende UDO nicht finden konnte. unknown command UDO kennt das angegebene Kommando nicht. Falls Sie ein Wort darstellen moechten, dass mit einem Ausrufungszeichen beginnt, so muessen Sie dieses durch Einfuegen eines `/' besonders markieren. use (!V) and (!v) in one line Hier fehlt noch etwas... use (!xlink [text] [topic@foo.hlp]) Der Aufbau eines externen Verweises fuer WinHelp ist nicht korrekt. wrong number of parameters Bei einem Befehl oder Platzhalter wurde die falsche Anzahl an Parametern uebergeben. Lesen Sie bitte im Befehlsindex nach, welche und wieviele Parameter dem angegebenen Befehl uebergeben werden muessen und korrigieren Sie Ihren Quelltext. xlink needs WinHelp destination topic Der Aufbau eines externen Verweises fuer WinHelp ist nicht korrekt. In diesem Fall fehlt der Name der Seite, die WINHELP.EXE darstellen soll. xlinks needs WinHelp destination file Der Aufbau eines externen Verweises fuer WinHelp ist nicht korrekt. In diesem Fall fehlt der Name der Hilfedatei. ====================================================================== Anhang D Dies & das ====================================================================== D.1 Fakten, Fakten, Fakten =========================== Folgende Maximalwerte muessen Sie beim Erstellen der Quelltexte beachten: Macros: 128 Defines: 128 Hyphens: 4096 Summe Kapitel, Labels und Aliase: 6144 Zeichen pro Zeile: 512 Zeichen pro Wort: 128 Silben pro Wort: 32 Worte pro Absatz: 800 Querverweise pro Absatz: 200 Zeilen pro Tabelle: 256 Spalten pro Tabelle: 32 Schachtelungstiefe der Umgebungen: 6 Hier nun ein paar Zahlen, die demonstrieren, wieviel Arbeit und Zeit in diesem Programm und der Dokumentation stecken: Sourcecode: ca. 820 KB Deutsche Dokumentation: ca. 470 KB Englische Dokumentation: ca. 400 KB D.2 Entwicklungsumgebung ========================= UDO wurde unter Zuhilfenahme folgender Programme entwickelt: Atari: Pure C 1.1, Pure Profiler 1.0, MiNT-Libs PL 46, SysGem 2.03beta, Interface 2.3, Programming Tools von Julian F. Reschke, MagiC-PC 1.01 DOS: EMX-GCC 2.6.3 emxfix06, GDB 4.13, PFE HP-UX: GCC 2.7.2 Linux: GCC 2.7.2, S.u.S.E. Linux 4.3 mit Kernel 2.0.18, Joe Macintosh: CodeWarrior 9 (68K/PPC), ResEdit 2.1 Momentan findet die Entwicklung teils unter Windows 95 auf einem Pentium 133 mit dem EMX-GCC, teils auf meinem Compaq Contura 486-DX50 Notebook unter Linux statt. Diese Dokumentation wurde unter Zuhilfenahme folgender Programme geschrieben: o Joe Allan's Own Editor `Joe' fuer MS-DOS und Linux o Allan Phillips' Programmer's File Editor `PFE' 0.06.01 (der beste Editor fuer Windows 3.1 und Windows 95, den ich kenne) o Phoenix fuer Windows 3.11 von Application Systems Heidelberg (wird jetzt als Fuji Base 1.0 verscherbelt) Alle Programme kann ich jedem nur waermstens empfehlen! D.3 Erzeugte Dateien ===================== Es folgt eine Auflistung der Endungen der Dateien, die Ihnen beim Umgang mit UDO ueber den Weg laufen werden. .txt: ASCII-Format .man: Manualpage-Format .cmd: Kommandodatei fuer den Pure-C-Help-Hypertext-Compiler .hpj: Projektdatei fuer den WinHelp-Hypertext-Compiler HC.EXE .htm(l): HTML-Format .lyx: LyX-Format .rtf: RTF bzw. WinHelp- oder QuickView-Quelltext .scr: Pure-C-Help-Quelltext .sgm(l): Linuxdoc-SGML-Quelltext .stg: ST-Guide-Quelltext .txt: Turbo-Vision-Help-Quelltext .tex: LaTeX-Quelltext .texi: Texinfo-Quelltext Dateien mit der Endung .ul? beinhalten die Fehlermeldungen und Infor- mationen, die UDO waehrend der Umwandlung erzeugt. Dateien mit der Endung .uh? beinhalten die Trennvorschlaege fuer das ASCII-, ST-Guide- und Pure-C-Help-Format. Dateien mit der Endung .ut? beinhalten den "Include-Tree", also dem logischen Aufbau aus Include-Dateien Ihres Quelltextes. Die folgenden Dateiendungen werden auftauchen, wenn Sie die von UDO erzeugten Dateien durch die formatzugehoerigen Programmen (siehe Klammerinhalt) weiterbearbeiten: .err: Logfile des WinHelp-Compilers (HC.EXE) .h: C-Header-File fuer Turbo-Vision (TVHC.EXE) .hlp: WinHelp-Datei (HC.EXE), Turbo-Vision-Help-Datei (TVHC.EXE), Pure-C-Help-Datei (HC.PRG) .hyp: ST-Guide-Hypertext (HCP.TTP) .ref: ST-Guide-Referenzdatei (HCP.TTP) ====================================================================== Anhang E Historie ====================================================================== An dieser Stelle findet man eine kurze Beschreibung der Aenderungen, die zwischen den einzelnen Versionen von UDO aufgetreten sind. E.1 In letzter Minute ====================== Hier finden Sie Aenderungen, die noch in letzter Minute eingetreten sind und noch nicht im restlichen Teil vermerkt sein koennen. 1. Ausgabeformat "NROFF" Dieses Format, bei dem ich mir gar nicht sicher bin, ob es denn nun NROFF ist, oder nicht vielleicht TROFF oder GROFF oder was auch immer, wird nun rudimentaer unterstuetzt. Sicherlich wird nicht alles funktionieren, aber dennoch kann man es jetzt schon bereits verwenden, um auf einfache Art und Weise Manpages fuer Unix-Systeme zu erstellen. 2. Ausgabeformate "C-Sourcecode" und "Pascal-Sourcecode" Mit diesen beiden Formaten ist es nun erstmals mit UDO moeglich, Quelltext und dessen Dokumentation in einer Datei zusammenzufassen. UDO gibt normalen Text fuer diese Formate so aus, dass er zwischen die typischen Kommentarzeichen gesetzt wird. Der Quelltext selber wird in einer sourcecode-Umgebung angegeben. 3. Die sourcecode-Umgebung Zeilen, die in einer sourcecode-Umgebung stehen, werden fuer die Sourcecode-Formate 1:1 ausgegeben. Bei den "normalen" Zielforma- ten werden diese Zeilen so ausgegeben, als stuenden sie in einer verbatim-Umgbebung, die wiederum in einer quote-Umgebung steht. Ein kleines Beispiel fuer einen C-Sourcecode mit UDO: !program Hello, world! !author Dirk Hagedorn !begin_document !node Hello, World Dieses Programm dient lediglich zur Demonstration. !begin_sourcecode #include int main ( void ) { printf("Hello, world!\n"); return 0; } !end_sourcecode !end_document E.2 Release 6 ============== Diese Release wurde am 2. Januar 1997 veroeffentlicht. Hier eine kleine Uebersicht der wichtigsten Aenderungen zur letzten oeffentlichen Version. In den acht Monaten wurden einige neue Formate, etliche neue Features eingebaut und einige Fehlerbeseitigungen vorgenommen. Auch hier hat es in der Zwischenzeit wieder nicht vermeiden lassen, die Syntax einiger Befehle zu aendern. Registrierte Benutzer, die sich die Zwischenversionen beschafft haben, finden hier als Gedaechtnisstuetze meine komprimierten Anmerkungen aus rel5-6.txt. Neue Formate: o Apple QuickView o HP-HelpTag-SGML (rudimentaer) o LyX o C- und Pascal Sourcecode (siehe "In letzter Minute") o NROFF (siehe "In letzter Minute") Neue Befehle: o !autoref_items [off|on]: Sollen die Items von description- und xlist-Umgebungen (nicht) referenziert werden? o !code_mac, !code_hp8, !code_iso, !code_dos und !code_tos: UDO kann nun Quelltexte mit vom Systemzeichensatz abweichen- den Zeichen umwandeln. o !country: Zusaetzliche Titelseiten-Information o !html_backpage: Zur Angabe einer Ruecksprung-URL fuer die Kopfzeile der ersten HTML-Seite. o !html_keywords: Zur Erzeugung von Meta-Informationen o !html_img_suffix: Zur Ermoeglichung der Einbindung von JPEG-Grafiken etc. o !html_nodesize: Zur Veraenderung der Fontgroesse von Kapitelueberschriften bei HTML o !ifos und !ifnos: Zur Abfrage des Betriebssystems. o !ignore_headline, !ignore_bottomline: Um Kopf- und/oder Fusszeilen nur in manchen Nodes zu unterdruecken. o !ignore_subtoc und Verwandte: Zur Unterdrueckung der Ausgabe von automatischen Unter-Inhaltsverzeichnissen o !ignore_links: Zur Unterdrueckung automatischer Links auf den Node, in dem dieses Kommando benutzt wird o !image*: Zum Erzeugen von Bildunterschriften ohne "Abbildung #:". o !image_counter: Zum Setzen des Bildzaehlers. o !no_index: Soll kein Index erzeugt werden? o !no_toc_subnodes, !no_toc_subsubnodes, !no_toc_subsubsubnodes: Zur Verringerung des Umfangs des In- haltsverzeichnisses o !no_preamble: Falls man selber die Praeambel zu einem Format erstellen moechte. o !parwidth: Zur Veraenderung der Zeilenbreite des Ausgabetextes o !rtf_charwidth: Zur Veraenderung des Berechnungswertes fuer Einrueckungen beim RTF o !set, !unset, !ifset, !ifnset: Zum Setzen und Abfragen von Symbolen. o !sort_hyphen_file: Soll UDO die Trennvorschlaege sortieren und dabei Dubletten entfernen? o !subsubsubnode und Verwandte: Eine vierte Gliederungsebene. o !table_counter: Zum Setzen des Tabellenzaehlers. o !table_caption*: Zum Erzeugen von Tabellentiteln ohne "Tabelle #:". o !tabwidth: Zur Angabe der Tabulatorbreite fuer verbatim- Umgebungen. o !use_justification: Soll Blocksatz erzeugt werden? o !use_nodes_inside_index, !use_alias_inside_index, !use_label_inside_index: Sollen Nodes, Aliase und/oder Labels automatisch in den Index uebernommen werden? o !use_output_buffer: Soll ein Ausgabe-Puffer benutzt werden, um die Referenzierung bei HTML und Windows Help sicherer zu machen? o !use_short_envs: Sollen alle Umgebungen komprimiert ausgegeben werden? o !verbatimsize: Zum Setzen der Fontgroesse von verbatim- Umgebungen. o !win_background: Zum Setzen der Hintergrundfarbe fuer WinHelp. o !win_high_compression, !win_medium_compression: Zum Setzen der Komressionsrate von WinHelp-Dateien. o !win_inline_bitmaps: Sollen hard-coded Bitmaps fuer WinHelp benutzt werden? o !win_charwidth: Zur Veraenderung des Berechnungswertes fuer Einrueckungen bei WinHelp. Neuheiten: o Eine vierte Gliederungsebene ist nun moeglich. o Blocksatz o Makros und Definitionen koennen Parameter enthalten. Das Schreiben eigener Kommandos ist damit in weiten Teilen moeglich. o blist-, ilist- und tlist-Umgebung o rechtbuendiger Text (flushright-Umgebung) o linksbuendiger Text (flushleft-Umgebung) zur Unterdrueckung des Blocksatzes o Bis zu vier Email-Adressen und das Land des Autors koennen auf der Titelseite ausgegeben werden. o Italienisch (!language italian), Spanisch (!language spanish) und Schwedisch (!language swedish) koennen als Ausgabesprache verwendet werden. o UDO kann die von ihm erzeugten Trennvorschlaege sortieren und dabei doppelte Eintraege entfernen. o !no_umlaute wandelt nun nicht nur Umlaute, sondern (fast) alle 8-bit-Zeichen um. o Es wurden etliche Laufzeit-Optimierungen vorgenommen. Trotz des gewaltigen Zuwachses an Befehlen braucht UDO nicht mehr Zeit als vorher, ja in den meisten Faellen ist UDO sogar schneller geworden. Aenderungen: o Die Umwandlung ins RTF wurde komplett neu programmiert, so dass die erzeugten Dateien nun auch problemlos mit WinWord importiert werden koennen. o Fuer LaTeX 2.09 und LaTeX2e erzeugt UDO automatisch eine Praeambel (abschaltbar). o Es koennen nun wesentlich mehr Kapitel, Tabellenzeilen, Trennvorschlaege etc. benutzt werden. o UDO entdeckt wesentlich mehr Syntaxfehler als zuvor. o Bilder werden nun umgebungsabhaengig positioniert. Sie werden nur noch dann zentriert ausgegeben, wenn der !image- Befehl innerhalb einer center-Umgebung steht. Die linksbuendige oder rechtsbuendige Ausgabe von Bilder ist somit nun auch moeglich. o Die Default-Endung fuer ASCII-Dateien lautet nun .txt. o Bei der LaTeX-Ausgabe wird innerhalb \verb kein Zeilenum- bruch mehr erzeugt. o DOS-Grafikzeichen werden fuer WinHelp durch `+', `-' oder `|' ersetzt. Syntaxaenderungen: o !no_verbatim_umlaute ersetzt den Schalter !verbatim_no_umlaute o Der Befehl !list_parsep existiert nicht mehr. Komprimierte Umgebungen koennen nun viel eleganter mit dem Umgebungspara- meter !short erstellt werden. o Die zu benutzende Sprache muss nun mit !language gesetzt werden. !language german ersetzt demnach den Befehl !german etc. o Beim Index-Befehl koennen nun bis zu drei Indizes uebergeben werden. o Der Befehl !win_html_look existiert nicht mehr. o Schattierte, helle, umrandete und umrahmte Schrift wird nicht mehr angeboten. Falls man diese Schriftarten unbedingt benoetigt, so kann man sich die noetigen Befehle leicht mit Definitionen selbst programmieren. E.3 Release 5 ============== Diese Version wurde am 18. April 1996 veroeffentlicht. Neue Formate: o Linuxdoc-SGML o Turbo Vision Help o Texinfo Neue Befehle: o !alias o !begin_raw, !end_raw ermoeglich die Angabe groesserer Bloecke Spezialbefehle fuer ein Format o !begin_table, !end_table Tabellensatz, latexlike! o !chapterimage einem Kapitel ein Titelbild zuweisen o !define o !french franzoesische Bezeichnungen verwenden o !heading, !subheading, !subsubheading Erzeugung von Ueberschriften im Text o !hline Ausgabe horizontaler Linien o !htmlname einem Kapitel einen Dateinamen zuweisen o !html_merge_nodes, !html_merge_subnodes, !html_merge_subsubnodes Kapitel fuer die HTML-Ausgabe zusammenfassen o (!ilink ...) Bilder im Text fuer Querverweise benutzen, nur WinHelp und HTML o (!img ...) Darstellung von Bildern im Text, nur WinHelp und HTML o !index Indexeintrag setzen o !list_parsep Ausgabe von Leerzeilen in Umgebungen aus- und einschalten o !ifdest, !else, !endif fuer formatabhaenige Textpassagen, flexibler als die alten Befehle fuer bedingte Texte (!begin_stg, !else_stg, !end_stg) o !iflang, !else, !endif fuer sprachabhaengige Textpassagen o !node*, !subnode*, !subsubnode*, !pnode*, !psubnode*, !psubsubnode* Kapitel ohne Eintragung ins Inhaltsverzeichnung erzeugen o !rinclude Spezialbefehle nachladen o !use_about_udo o !use_chapter_images Bilder statt Kapitelueberschiften benutzen, nur fuer ST- Guide, WinHelp und HTML o !use_style_book o !win_html_look WinHelp-Files im HTML-Look mit grauem Hintergrund ausgeben Aenderungen: o Ein Tabellensatz wurde implementiert. Tabellen koennen nun sehr einfach erstellt werden. Dabei kann man frei festlegen, wie Spalten ausgerichtet werden sollen und wo Linien gezeichnet werden sollen. o Die Formatierung der Umgebungen wurde komplett neu programmiert. Dadurch ist eine bis zu sechsfache Verschach- telung (auch der xlist-Umgebung) moeglich. Die Ausgabe aller Umgebungen funktioniert nun auch bei WinHelp und RTF. o Die halbautomatische Silbentrennung wurde komplett neu programmiert. o Die automatische Referenzierung wurde dahingehend veraendert, dass ein Verweis nur noch bei ganzen Worten angelegt wird. o Die maximale Anzahl der Kapitel und Labels innerhalb eines Quelltextes wurde verdoppelt. Nun sind maximal 1024 Kapitel und 1024 Labels moeglich. o Pro Absatz sind jetzt bis zu 200 Verweise moeglich. Frueher waren (aufgrund eines Fehlers) nur 16 Verweise pro Quelltext moeglich. o Manualpages werden komplett neu formatiert. Nun muss man sich nicht mehr die Finger mit description- und quote- Umgebungen verbiegen. o Fuer emTeX werden nun auch PCX-Bilder unterstuetzt. o Die WinHelp-Ausgabe wurde drastisch erweitert, so z.B. werden Buttons im WinHelp-Fenster angelegt, Labels werden direkt angesprungen, etc. o Die Atari-Versionen wurden mit den MiNT-Libs PL 46 erstellt. Die Probleme mit langen Dateinamen duerften daher der Vergangenheit angehoeren. Syntaxaenderungen: o Die speziellen Umgebungen, die mit !begin_*, !else_* und !end_* gebildet wurden, muessen nun durch die wesentlich flexibleren Kommandos !ifdest, !else und !endif erstellt werden. Statt... !begin_asc [...] !else_asc [...] !end_asc ... muss man nun folgendes Konstrukt verwenden: !ifdest [asc] [...] !else [...] !endif Bugfixes: Etliche. ;-) E.4 Release 4 ============== Diese Version wurde am 12.11.1995 veroeffentlicht. Gegenueber Release 3 hat sich soviel getan, dass ich jedem nur empfehlen kann, diese Dokumentation einmal zu ueberfliegen. Wuerde ich alle Aenderungen hier angeben, waere diese Dokumentation um 10 Seiten laenger! Wer bereits Texte mit UDO3 erstellt hat und sich als registrierter Benutzer nicht die aktuellen Betaversionen besorgt hat, dem rate ich, einfach einmal diese Texte mit der neuen Version zu uebersetzen, Fehlermeldungen zu beachten und die Zieldatei unter die Lupe zu nehmen. Es muessen nicht viele Anpassungen vorgenommen werden, und die meisten Anpassungen lassen sich durch einfaches Suchen und Ersetzen mit einem Editor schnell erledigen. Aber die Syntax von UDO4 ist teilweise inkompatibel zur Syntax von UDO3! Hier nun nur die wichtigsten Aenderungen: Syntaxaenderungen und -erweiterungen: 1. Sonderzeichen muessen nicht mehr besonders gekennzeichnet werden, da UDO selber fuer die noetigen Anpassungen sorgt. 2. Makros werden anders behandelt. 3. Viele Spezialbefehle wurden durch allgemeinere Befehle ersetzt. 4. Manche Befehle duerfen nun nur noch im Vorspann, manche nur noch im Hauptteil benutzt werden. TeX: 1. Die Titelseite wird nun anders erzeugt. 2. Trennvorschlaege, die mit !hyphen angelegt werden, werden nun auch hier beachtet. 3. Fuer das CS-TeX wird nun auch das Lindner-TeX-Makro zur Ausgabe von GEM-Images benutzt. 4. Neuer Spezialbefehl !tex_book. ST-Guide: 1. !stg_short_title existiert nicht mehr WinHelp, HTML, Manualpage: Diese Ausgabeformate sind neu hinzugekommen. 1stWordplus: Dieses Ausgabeformat wird nicht mehr angeboten. E.5 Release 3 ============== Was sich damals geaendert hat, das duerfte heute niemanden mehr interessieren. ====================================================================== Anhang F Befehlsindex ====================================================================== In diesem Anhang finden Sie eine Kurzbeschreibung aller UDO-Kommandos in alphabetischer Reihenfolge. In der Befehlserklaerung wird beschrie- ben, was die Beschreibungen bedeuten. Befehlserklaerung ================= Typ & Position: Der Typ des Befehls und die Position, wo der Befehl benutzt werden darf. Ein Kommando veranlasst UDO, etwas bestimmtes zu tun, ein Schalter setzt bestimmte Informationen, an denen UDO erkennt, wie es demnaechst zu verfahren hat, ein Platzhalter wird bei der Umwandlung lediglich durch etwas anderes ersetzt. Bei "Vorspann" darf man einen Befehl nur im Vorspann des Quelltextes (also vor !begin_document) einsetzen, bei "Hauptteil" darf man einen Befehl nur im Hauptteil des Quelltextes (also nach !begin_document) einsetzen, bei "Vorspann & Hauptteil" darf man einen Befehl ueberall einsetzen. Syntax: Hier sieht man, wie man den Befehl einsetzen muss. steht fuer eine Zeichenfolge, steht fuer einen Dateinamen, steht fuer eine Ziffernfolge, steht fuer ein einzelnes Zeichen, steht fuer die Angabe von Kuerzeln der Ausgabeforma- te (aqv = Apple QuickView, asc = ASCII, htag = HP- Helptag-SGML, html = HTML, info = Texinfo, ldoc = Linuxdoc-SGML, lyx = LyX, man = Manualpage, pch = Pure-C-Help, rtf = RTF, stg = ST-Guide, tex = LaTeX, tvh = Turbo-Vision-Help, win = WinHelp) steht fuer die Angabe von Sprachkuerzeln (english = English, french = Franzoesisch, german = Deutsch, italian = Italienisch, spanish = Spanisch, swedish = Schwedisch) steht fuer ein oder mehrere Betriebssysteme (beos = BeOS, dos = DOS, hpux = HP-UX, linux = Linux, macos = MacOS, nextstep = NeXTStep, sinix = SINIX, sunos = SunOS, tos = TOS) Beispiel: Hier findet man eventuell ein kurzes Beispiel fuer den jeweiligen Befehl. Siehe auch: Hier sind verwandte Befehle oder Themen ausgelistet, die in direktem Zusammenhang mit dem beschriebenen Befehl stehen. F.1 A... ========= F.1.1 !=aqv ------------ Zeile nicht beim Apple-QuickView-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=aqv Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins QuickView-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !aqv, !ifdest, Formatspezifische Befehle, raw- Umgebung F.1.2 !=asc ------------ Zeile nicht beim ASCII-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=asc Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins ASCII-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !asc, !ifdest, Formatspezifische Befehle, raw- Umgebung F.1.3 !alias ------------- Zusatznamen eines Kapitels definieren Typ & Position: Kommando, Hauptteil Syntax: !alias Beschreibung: Definiert einen Zweitnamen eines Kapitels. Taucht "" im Text auf, werden genauso Querverweise zum zugehoerigen Kapitel erzeugt wie bei !label, !node, !subnode, !subsubnode etc. Sie koennen !alias mehrfach innerhalb eines Kapitels benutzen, jedoch sollte nur einmal als Name fuer einen Alias, Label oder ein Kapitel verwendet werden. Siehe auch: !node, !subnode, !subsubnode, !subsubsubnode, !label, Querverweise, Sprungmarken F.1.4 !aqv ----------- Zeile nur beim Apple-QuickView-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !asc Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins QuickView-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !=aqv, !ifdest, Formatspezifische Befehle, raw- Umgebung F.1.5 !asc ----------- Zeile nur beim ASCII-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !asc Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins ASCII-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !=asc, !ifdest, Formatspezifische Befehle, raw- Umgebung F.1.6 !author -------------- Namen des Autors setzen Typ & Position: Kommando, Vorspann Syntax: !author Beschreibung: wird als Name des Autors auf der Titelseite ausgegeben und fuer weitere, jedoch sehr spezifische Formatbefehle verwendet. Im Text selbst findet keine weitere Verwendung. Beispiel: !author Dirk Hagedorn Siehe auch: !maketitle, !authorimage, Titelseite F.1.7 !authorimage ------------------- Logo des Autors fuer die Titelseite definieren Typ & Position: Kommando, Vorspann Syntax: !authorimage Beschreibung: wird als Bild (z.B. ein Logo) zusaetzlich direkt ueber dem Namen des Autors auf der Titelseite ausgegeben, falls das Ausgabeformat Unterstuetzung fuer Bilder bietet. Beispiel: !authorimage dh Siehe auch: !maketitle, !author, Titelseite, Bilder F.1.8 !autoref --------------- Automatische Referenzierung ein-/ausschalten. Typ & Position: Schalter, Hauptteil Syntax: !autoref [ on | off ] Beschreibung: Dieser Befehl schaltet die automatische Referenzie- rung ein ([on]) oder aus ([off]). Beim Start der Konvertierung ist die automatische Generierung von Querverweisen aktiviert. Bei der Umwandlung ins ST- Guide-Format werden die Befehle in @autorefon bzw. @autorefoff umgewandelt. Beispiel: !autoref [off] Siehe auch: Querverweise F.1.9 !autoref_items --------------------- Referenzierung bei Items ein-/ausschalten. Typ & Position: Schalter, Hauptteil Syntax: !autoref_items [ on | off ] Beschreibung: Hiermit kann man einstellen, ob UDO die Items einer description-Umgebung oder xlist-Umgebung referenzieren soll. Beim Start von UDO ist die Refe- renzierung der Items standardmaessig aktiviert. Beispiel: !autoref_items [off] Siehe auch: Beschreibungen, Listen, !item [ ] F.1.10 (!alpha) ---------------- Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!alpha) Beschreibung: Dieser Platzhalter wird durch alpha ersetzt. Beispiel: (!alpha) wird zu alpha Siehe auch: (!beta), Sonderzeichen F.2 B... ========= F.2.1 !begin_appendix ---------------------- Anhang einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_appendix Beschreibung: Leitet den Anhang ein. Kapitel werden im Anhang mit Buchstaben gekennzeichnet. UDO unterstuetzt nur einen Anhang pro Quelltext! Siehe auch: !end_appendix, Anhang F.2.2 !begin_blist ------------------- Eine "fette" Liste einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_blist [] Beschreibung: Leitet eine neue Listen-Umgebung ein. Diese Umgebung muss mit !end_blist beendet werden. Die Laenge von definiert die Tiefe der Einrueckung der Aufzaehlungspunkte. Diese Umgebung laesst sich mit anderen Umgebungen kombiniert verwenden. Die Texte, die man mit !item [ ] angibt, werden fett dargestellt. Siehe auch: !end_blist, !item [ ], !begin_ilist, !begin_tlist, !begin_xlist, Listen F.2.3 !begin_center -------------------- Text zentriert ausgeben Typ & Position: Kommando, Hauptteil Syntax: !begin_center Beschreibung: Dieses Kommando oeffnet eine (neue) center-Umgebung. Zeilen, die innerhalb dieser Umgebung stehen, werden zentriert ausgegeben, bis das Kommando !end_center angegeben wird. UDO formatiert auch die Zeilen dieser Umgebung, daher sollte man auch hier notfalls manuelle Zeilenumbrueche mit (!nl) einfuegen. Siehe auch: !end_center, (!nl), Texthervorhebungen F.2.4 !begin_description ------------------------- Neue Beschreibung einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_description Beschreibung: Leitet eine (weitere) description-Umgebung ein. Diese Umgebung muss mit !end_description beendet werden. Die description-Umgebung kann mehrfach verschachtelt benutzt oder mit anderen Umgebungen kombiniert werden. Aufzaehlungspunkte werden bei der description-Umgebung mit !item [ ] eingeleitet. Der Text, der dann hier in eckigen Klammern angegeben wird, wird in Fettschrift ausgegeben, sofern das Aus- gabeformat Fettschrift unterstuetzt. Siehe auch: !end_description, !item [ ], Beschreibungen, !short F.2.5 !begin_document ---------------------- Hauptteil des Dokumentes einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_document Beschreibung: Dieses Kommando muss in jedem Quelltext vorhanden sein. Es trennt den Vorspann des Quelltextes vom Hauptteil. Siehe auch: !end_document F.2.6 !begin_enumerate ----------------------- Neue Numerierung einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_enumerate Beschreibung: Leitet eine (weitere) enumerate-Umgebung ein. Diese Umgebung muss mit !end_enumerate beendet werden. Die enumerate-Umgebung koennen Sie mehrfach verschachtelt und auch mit anderen Umgebungen kombiniert benutzen. Aufzaehlungspunkte einer enumerate-Umgebung werden mit !item eingeleitet und mit alphanumerischen Zeichen markiert. Siehe auch: !end_enumerate, !item, Numerierungen, !short F.2.7 !begin_flushleft ----------------------- Umgebung fuer linksbuendigen Text oeffnen Typ & Position: Kommando, Hauptteil Syntax: !begin_flushleft Beschreibung: Zeilen, die in einer flushleft-Umgebung stehen, werden immer linksbuendig, d.h. ohne Blocksatz, ausgegeben. Siehe auch: Texthervorhebungen, !end_flushleft F.2.8 !begin_flushright ------------------------ Umgebung fuer rechtsbuendigen Text oeffnen Typ & Position: Kommando, Hauptteil Syntax: !begin_flushright Beschreibung: Zeilen, die in einer flushright-Umgebung stehen, werden rechtsbuendig ausgegeben. Siehe auch: Texthervorhebungen, !end_flushright F.2.9 !begin_ilist ------------------- Eine "kursive" Liste einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_ilist [] Beschreibung: Leitet eine neue Listen-Umgebung ein. Diese Umgebung muss mit !end_ilist beendet werden. Die Laenge von "" definiert die Tiefe der Einrueckung der Aufzaehlungspunkte. Sie koennen diese Umgebung auch mit anderen Umgebungen kombinieren.. Die Aufzaehlungspunkte, die man mit !item [ ] einleitet, werden kursiv dargestellt. Siehe auch: !end_ilist, !item [ ], !begin_blist, !begin_xlist, !begin_tlist, Listen F.2.10 !begin_itemize ---------------------- Neue Aufzaehlung einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_itemize Beschreibung: Leitet eine (weitere) itemize-Umgebung ein. Diese Umgebung muss mit !end_itemize beendet werden. Die itemize-Umgebung koennen Sie mehrfach und auch mit anderen Umgebungen kombiniert einsetzen. Aufzaehlungspunkte, die mit !item eingeleitet werden, werden mit Punkten und Strichen markiert. Siehe auch: !end_itemize, !item, Aufzaehlungen, !short F.2.11 !begin_quote -------------------- Umgebungstext eingerueckt darstellen Typ & Position: Kommando, Hauptteil Syntax: !begin_quote Beschreibung: Dieses Kommando leitet eine (weitere) quote-Umgebung ein. Text, der zwischen diesem und !end_quote angegeben ist, wird eingerueckt dargestellt. Sie koennen die Umgebung mehrfach und kombiniert mit anderen Umgebungen benutzen. Siehe auch: !end_quote, Einruecken von Absaetzen F.2.12 !begin_raw ------------------ raw-Umgebung einleiten Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !begin_raw Beschreibung: Dieser Befehl leitet eine raw-Umgebung ein. Diese Umgebung muss mit !end_raw beendet werden. Jede Zeile innerhalb dieser Umgebung wird direkt, also ohne jegliche Umwandlung, Zentrierung oder Einrueckung ausgegeben. Die Umgebung dient daher zur Einbindung spezieller Befehle fuer die Ausgabeformate. Siehe auch: !end_raw, raw-Umgebung, !rinclude, !ifdest F.2.13 !begin_sourcecode ------------------------- Eine Sourcecode-Umgebung einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_sourcecode Beschreibung: Dieses Kommando leitet eine sourcecode-Umgebung ein. Diese Umgebung muss mit !end_sourcecode beendet werden. Zeilen die in einer solchen Umgebung angegeben sind, werden fuer die Sourcecode-Formate ohne Anpassung ausgegeben. Bei allen "normalen" Formaten erfolgt die Ausgabe der Zeilen, als ob sie innerhalb einer verbatim-Umgebung stehen, welche sich wiederum innerhalb einer quote-Umgebung befindet. Siehe auch: !end_sourcecode F.2.14 !begin_table -------------------- Eine Tabelle beginnen Typ & Position: Kommando, Hauptteil Syntax: !begin_table [] {!hline} Beschreibung: Mit diesem Kommando wird eine Tabelle eingeleitet. Fuer `' geben Sie an, wie die Spalten der Tabelle ausgerichtet werden sollen und vor bzw. nach welcher Spalte vertikale Linien gezogen werden sollen. Wird zum Schluss noch !hline angegeben, so beginnt die Tabelle mit einer horizontalen Linie. Im Beispiel sehen Sie eine Tabelle, die mit links, rechts und oben mit einer Linie versehen ist und die Spalten linksbuendig, zentriert und rechtsbuendig ausgerichtet werden. Beispiel: !begin_table [|lcr|] !hline Siehe auch: !hline, !end_table, Tabellen F.2.15 !begin_tlist -------------------- Eine "nichtproportionale" Liste einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_tlist [] Beschreibung: Leitet eine neue Listen-Umgebung ein. Diese Umgebung muss mit !end_ilist beendet werden. Die Laenge von "" definiert die Tiefe der Einrueckung der Aufzaehlungspunkte. Sie koennen diese Umgebung auch mit anderen Umgebungen kombinieren.. Die Aufzaehlungspunkte, die man mit !item [ ] einleitet, werden nichtproportional dargestellt. Siehe auch: !end_tlist, !item [ ], !begin_blist, !begin_ilist, !begin_xlist, Listen F.2.16 !begin_verbatim ----------------------- Eine verbatim-Umgebung einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_verbatim Beschreibung: Leitet eine verbatim-Umgebung ein. Diese Umgebung muss mit !end_verbatim beendet werden. Text einer verbatim-Umgebung wird 1:1 ausgegeben, es werden keine UDO-Kommandos umgewandelt! Auch die Wirkung von etwaigen Zielformatbefehlen wird aufgehoben. Bei der Ausgabe werden Einrueckungen beachtet. Siehe auch: !end_verbatim, Vorformatierter Text, !vinclude F.2.17 !begin_xlist -------------------- Eine Liste einleiten Typ & Position: Kommando, Hauptteil Syntax: !begin_xlist [] Beschreibung: Leitet eine neue Listen-Umgebung ein. Diese Umgebung muss mit !end_xlist beendet werden. Die Laenge von "" definiert die Tiefe der Einrueckung der Aufzaehlungspunkte. Diese Umgebung laesst sich mit anderen Umgebungen kombiniert verwenden. Die Texte, die man mit !item [ ] angibt, werden normal dargestellt. Siehe auch: !end_xlist, !item [ ], !begin_blist, !begin_ilist, !begin_tlist, Listen F.2.18 !bigskip ---------------- Drei zusaetzliche Leerzeilen einfuegen Typ & Position: Kommando, Hauptteil Syntax: !bigskip Beschreibung: Dieser Befehl sorgt fuer die Ausgabe von drei zusaetzlichen Leerzeilen und dient dazu, Absaetze deutlicher voneinander abzuheben. Bei der Umwandlung ins LaTeX-Format werden keine drei Leerzeilen sondern `\bigskip' ausgegeben. Siehe auch: !smallskip, !medskip F.2.19 !break -------------- Umwandlung vorzeitig unterbrechen Typ & Position: Kommando, Hauptteil Syntax: !break Beschreibung: Dieses Kommando kann man benutzen, um die Umwandlung des Quelltextes vorzeitig zu beenden. Alles, was nach !break folgt, wird nicht mehr beachtet. UDO fuehrt noch automatisch ein !end_appendix und !end_document aus, bevor die Umwandlung unterbrochen wird. F.2.20 (!B)...(!b) ------------------- Fettschrift Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!B)(!b) Beschreibung: wird fett dargestellt, falls moeglich. Beispiel: (!B)fett(!b) Siehe auch: Texthervorhebungen F.2.21 (!beta) --------------- Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!beta) Beschreibung: Dieser Platzhalter wird durch beta ersetzt. Beispiel: (!beta) wird zu beta Siehe auch: (!alpha), Sonderzeichen F.3 C... ========= F.3.1 !chapterimage -------------------- Kapitelueberschrift durch Grafik ersetzen Typ & Position: Kommando, Hauptteil Syntax: !chapterimage Beschreibung: Beim HTML-, ST-Guide- und WinHelp-Format wird anstelle einer Kapitelueberschrift die Grafik "" verwendet, falls im Vorspann der Schalter !use_chapter_images verwendet wurde. Beispiel: !chapterimage udo Siehe auch: Bilder, !use_chapter_images F.3.2 !code_dos ---------------- Auf den IBM-PC-Zeichensatz umschalten Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !code_dos Beschreibung: UDO erwartet nach diesem Kommando Texte oder Textpassagen, die im IBM-PC-Zeichensatz verfasst wurden. Um wieder auf den Systemzeichensatz zurueckzuwechseln, koennen Sie einige andere Kommandos verwenden (siehe unten). Siehe auch: !code_iso, !code_mac, !code_hp8, !code_tos, Sonder- zeichen F.3.3 !code_hp8 ---------------- Auf den HP-Roman-8-Zeichensatz umschalten Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !code_hp8 Beschreibung: UDO erwartet nach diesem Kommando Texte oder Textpassagen, die im HP-Roman-8-Zeichensatz verfasst wurden. Um wieder auf den Systemzeichensatz zurueckzuwechseln, koennen Sie einige andere Kommandos verwenden (siehe unten). Siehe auch: !code_dos, !code_iso, !code_mac, !code_tos, Sonder- zeichen F.3.4 !code_iso ---------------- Auf den ISO-Zeichensatz umschalten Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !code_iso Beschreibung: UDO erwartet nach diesem Kommando Texte oder Textpassagen, die im ISO-Latin-1-Zeichensatz oder Windows-ANSI-Zeichensatz verfasst wurden. Um wieder auf den Systemzeichensatz zurueckzuwechseln, koennen Sie einige andere Kommandos verwenden (siehe unten). Siehe auch: !code_dos, !code_mac, !code_hp8, !code_tos, Sonder- zeichen F.3.5 !code_mac ---------------- Auf den Apple-Macintosh-Zeichensatz umschalten Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !code_mac Beschreibung: UDO erwartet nach diesem Kommando Texte oder Textpassagen, die im Macintosh-Zeichensatz verfasst wurden. Um wieder auf den Systemzeichensatz zurueckzuwechseln, koennen Sie einige andere Kommandos verwenden (siehe unten). Siehe auch: !code_dos, !code_iso, !code_hp8, !code_tos, Sonder- zeichen F.3.6 !code_tos ---------------- Auf den Atari-ST-Zeichensatz umschalten Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !code_tos Beschreibung: UDO erwartet nach diesem Kommando Texte oder Textpassagen, die im Atari-ST-Zeichensatz verfasst wurden. Um wieder auf den Systemzeichensatz zurueckzuwechseln, koennen Sie einige andere Kommandos verwenden (siehe unten). Siehe auch: !code_dos, !code_iso, !code_mac, !code_hp8, Sonder- zeichen F.3.7 !country --------------- Land des Autors fuer den Adressblock der Titelseite setzen Typ & Position: Kommando, Vorspann Syntax: !country Beschreibung: "" wird auf der Titelseite unterhalb des Wohnortes des Autors ausgegeben. Ansonsten findet "" keine weitere Verwendung. Beispiel: !country Deutschland Siehe auch: !maketitle, Titelseite F.3.8 (!copyright) ------------------- Copyright-Symbol ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!copyright) Beschreibung: Dieser Platzhalter wird durch das Copyright-Symbol ersetzt, sofern er in dem jeweiligen Zeichensatz vorhanden ist. Ist er es nicht, so ersetzt UDO den Platzhalter durch "(c)". Beispiel: Aus (!copyright) wird (c) F.4 D... ========= F.4.1 !date ------------ Datumsinformation fuer Titelseite setzen Typ & Position: Kommando, Vorspann Syntax: !date Beschreibung: "" wird unterhalb der Versionsinformationen auf der Titelseite ausgegeben. Ansonsten werden diese In- formationen nicht weiter benoetigt. Im Beispiel wuerde auf der Titelseite das aktuelle Systemdatum eingesetzt. Beispiel: !date (!today) Siehe auch: !maketitle, (!today), (!short_today), Titelseite F.4.2 !define -------------- Definition setzen Typ & Position: Kommando, Vorspann Syntax: !define Beschreibung: Dieses Kommando legt eine neue Definition an. Bei der Umwandlung wird dann "(!)" durch "" ersetzt, ohne dass Umlaute oder andere spezielle Zeichen umgewandelt werden. Im Beispiel wuerde "(!H1)" durch "" ersetzt. Definitionen koennen auch Paramater enthalten. Naehere Informationen dazu findet man im Kapitel "Definitionen". Beispiel: !define H1 Siehe auch: Definitionen F.5 E... ========= F.5.1 !else ------------ Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !else Beschreibung: Die diesem Kommando folgenden Zeilen werden bis zum Eintreffen von !endif ausgegeben, wenn bei !ifdest oder !iflang nicht das Kuerzel des aktuellen Ausgabe- formates bzw. der Ausgabesprache angegeben wurde. Siehe auch: !ifdest, !iflang, !endif, Abfragebefehle F.5.2 !email ------------- EMail-Informationen fuer die Titelseite setzen Typ & Position: Kommando, Vorspann Syntax: !email Beschreibung: "" wird auf der Titelseite unterhalb des Namens und der Anschrift des Autors ausgegeben. "" findet sonst keine weitere Verwendung durch UDO. !email kann bis zu viermal angegeben werden, so dass man auch mehrere EMail-Adressen auf der Titelseite angeben kann. Beispiel: !email DirkHage@aol.com Siehe auch: !maketitle, Titelseite F.5.3 !end_appendix -------------------- Anhang beenden Typ & Position: Kommando, Hauptteil Syntax: !end_appendix Beschreibung: Beendet den Anhang. UDO unterstuetzt genau einen Anhang, daher sollte !end_appendix das letzte Kommando vor !end_document sein. Siehe auch: !begin_appendix, Anhang F.5.4 !end_blist ----------------- Liste beenden Typ & Position: Kommando, Hauptteil Syntax: !end_blist Beschreibung: Beendet die letzte blist-Umgebung. Siehe auch: !begin_blist, !item [ ], Listen F.5.5 !end_center ------------------ Die (letzte) center-Umgebung beenden Typ & Position: Kommando, Hauptteil Syntax: !end_center Beschreibung: Dieses Kommando beendet die zuletzt geoeffnete center-Umgebung. Siehe auch: !begin_center, Texthervorhebungen F.5.6 !end_description ----------------------- Letzte description-Umgebung beenden Typ & Position: Kommando, Hauptteil Syntax: !end_description Beschreibung: Beendet die letzte description-Umgebung. Siehe auch: !begin_description, !item [ ], Beschreibende Aufzaehlungen F.5.7 !end_document -------------------- Ende des Dokumentes setzen Typ & Position: Kommando, Hauptteil Syntax: !end_document Beschreibung: Dieses Kommando muss in jedem Quelltext vorhanden sein. Es beendet den Hauptteil und sollte das letzte Kommando des Quelltextes sein. Fehlt dieses Kommando, erzeugt UDO eine Fehlermeldung. Siehe auch: !begin_document F.5.8 !end_enumerate --------------------- Letzte numerierte Aufzaehlung beenden Typ & Position: Kommando, Hauptteil Syntax: !end_enumerate Beschreibung: Beendet die letzte enumerate-Umgebung. Siehe auch: !begin_enumerate, !item, Numerierte Aufzaehlungen F.5.9 !end_flushleft --------------------- Umgebung fuer linksbuendigenText schliessen Typ & Position: Kommando, Hauptteil Syntax: !end_flushleft Beschreibung: Die (letzte) flushleft-Umgebung wird mit diesem Kommando beendet. Siehe auch: Texthervorhebungen, !begin_flushleft F.5.10 !end_flushright ----------------------- Umgebung fuer rechtsbuendigen Text schliessen Typ & Position: Kommando, Hauptteil Syntax: !end_flushright Beschreibung: Die (letzte) flushright-Umgebung wird mit diesem Kommando beendet. Siehe auch: Texthervorhebungen, !begin_flushright F.5.11 !end_ilist ------------------ Liste beenden Typ & Position: Kommando, Hauptteil Syntax: !end_ilist Beschreibung: Beendet die letzte ilist-Umgebung. Siehe auch: !begin_ilist, !item [ ], Listen F.5.12 !end_itemize -------------------- Letzte einfache Aufzaehlung beenden Typ & Position: Kommando, Hauptteil Syntax: !end_itemize Beschreibung: Beendet die letzte itemize-Umgebung. Siehe auch: !begin_itemize, !item, Einfache Aufzaehlungen F.5.13 !end_quote ------------------ Letzte Absatzeinrueckung aufheben Typ & Position: Kommando, Hauptteil Syntax: !end_quote Beschreibung: Dieses Kommando beendet die letzte quote-Umgebung, in der der Text eingerueckt dargestellt wird. Siehe auch: !begin_quote F.5.14 !end_raw ---------------- Raw-Umgebung beenden Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !end_raw Beschreibung: Beendet die raw-Umgebung. Siehe auch: !begin_raw, raw-Umgebung F.5.15 !end_sourcecode ----------------------- Eine sourcecode-Umgebung beenden Typ & Position: Kommando, Hauptteil Syntax: !end_sourcecode Beschreibung: Dieses Kommando beendet die sourcecode-Umgebung. Siehe auch: !begin_sourcecode F.5.16 !end_table ------------------ Tabelle beenden und ausgeben Typ & Position: Kommando, Hauptteil Syntax: !end_table Beschreibung: Beendet die table-Umgebung und sorgt fuer die Ausgabe der Tabelle. Siehe auch: Tabellen, !begin_table F.5.17 !end_tlist ------------------ Liste beenden Typ & Position: Kommando, Hauptteil Syntax: !end_tlist Beschreibung: Beendet die letzte tlist-Umgebung. Siehe auch: !begin_tlist, !item [ ], Listen F.5.18 !end_verbatim --------------------- Verbatim-Umgebung beenden Typ & Position: Kommando, Hauptteil Syntax: !end_verbatim Beschreibung: Beendet die verbatim-Umgebung. Siehe auch: !begin_verbatim, Vorformatierter Text F.5.19 !end_xlist ------------------ Liste beenden Typ & Position: Kommando, Hauptteil Syntax: !end_xlist Beschreibung: Beendet die letzte xlist-Umgebung. Siehe auch: !begin_xlist, !item [ ], Listen F.5.20 !endif -------------- Spezielle Umgebung beenden Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !endif Beschreibung: Beendet eine spezielle Umgebung, die mit !ifdest, !iflang, !ifset, !ifos oder !if begonnen wurde. Der diesem Befehl folgende Text wird wieder fuer alle Formate ausgegeben. Siehe auch: !ifdest, !iflang, !ifset, !ifos, !if, !else, Abfragebefehle F.6 F... ========= F.6.1 !fussy ------------- Warnmeldungen fuer kurze Zeilen einschalten Typ & Position: Schalter, Hauptteil Syntax: !fussy Beschreibung: Schaltet die Warnung vor kurzen Zeilen wieder ein. Bei der Umwandlung ins LaTeX-Format erfolgt keine Umsetzung in `\fussy'! Siehe auch: !sloppy, Fehlermeldungen, Silbentrennung F.7 G... ========= F.7.1 (!grin) -------------- Emoticon ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!grin) Beschreibung: Dieser Platzhalter wird durch einen grinsenden Smiley ersetzt, der in Schreibmaschinenschrift ausgegeben wird. Beispiel: (!grin) wird zu ;-) Siehe auch: (!laugh) F.8 H... ========= F.8.1 !=htag ------------- Zeile nicht beim HP-Helptag-SGML ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=htag Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins Helptag-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !htag, !ifdest, Formatspezifische Befehle, raw- Umgebung F.8.2 !=html ------------- Zeile nicht beim HTML-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=html Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins HTML-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !html, !ifdest, Formatspezifische Befehle, raw- Umgebung F.8.3 !heading --------------- Eine Kapitel-Ueberschrift ausgeben Typ & Position: Kommando, Hauptteil Syntax: !heading Beschreibung: Dieser Befehl erzeugt eine Zeile mit `', der in der gleichen Schriftart und -groesse wie eine Kapitel-Ueberschrift ausgegeben wird. Beispiel: !heading Eine Ueberschrift Siehe auch: !subheading, !subsubheading, !subsubsubheading F.8.4 !hline ------------- Horizontale Linie ausgeben Typ & Position: Kommando, Hauptteil Syntax: !hline Beschreibung: Dieses Kommando fuegt in die Zieldatei eine horizontale Linie ein. Desweiteren dient das Kommando dazu, um horizontale Linien innerhalb einer Tabelle zu erzeugen. Nicht alle Formate gestatten es, horizontale Linien auszugeben. Siehe auch: Tabellen F.8.5 !htag ------------ Zeile nur fuer das HP-Helptag-SGML ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !htag Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins Helptag-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Siehe auch: !=htag, !ifdest, Formatspezifische Befehle, raw- Umgebung F.8.6 !htag_img_suffix ----------------------- Endung der Grafiken fuer HP-Helptag-SGML aendern Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !htag_img_suffix Beschreibung: Mit diesem Befehl koennen Sie die Endung der Grafiken setzen, die fuer die folgenden !image-Befehle verwendet werden soll. Standardmaessig benutzt UDO die Endung `tiff'. !htag_img_suffix kann beliebig oft aufgerufen werden, so dass einer Verwendung verschie- dener Grafikformate nichts im Wege steht. Beispiel: !htag_img_suffix xwd Siehe auch: !image, (!img [ ]), Bilder F.8.7 !html ------------ Zeile nur fuer das HTML-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !html Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins HTML-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Beispiel: !html
Siehe auch: !=html, !ifdest, Formatspezifische Befehle, raw- Umgebung F.8.8 !html_backpage --------------------- Ruecksprung-URL angeben Typ & Position: Kommando, Vorspann Syntax: !html_backpage Beschreibung: Mit diesem Kommando koennen Sie eine URL angeben, die fuer den Verweis fuer den "Go up"-Button in der Kopfzeile der Hauptseite bei HTML-Dateien verwendet werden soll. Beispiel: !html_backpage ../index.html Siehe auch: !no_headlines, !no_bottomlines F.8.9 !html_img_suffix ----------------------- Endung der Grafiken fuer HTML aendern Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !html_img_suffix Beschreibung: Mit diesem Befehl koennen Sie die Endung der Grafiken setzen, die fuer die folgenden !image-Befehle verwendet werden soll. Standardmaessig benutzt UDO die Endung `gif'. Falls Si z.B. JPEG-Grafiken benutzen und diese Dateien auf `jpeg' enden, benutzen Sie einfach untenstehendes Beispiel. !html_img_suffix kann beliebig oft aufgerufen werden, so dass einer Verwendung verschiedener Grafikformate nichts im Wege steht. Beispiel: !html_img_suffix jpeg Siehe auch: !image, (!img [ ]), Bilder F.8.10 !html_keywords ---------------------- HTML-Meta-Keywords setzen Typ & Position: Kommando, Hauptteil Syntax: !html_keywords Beschreibung: sollte eine durch Kommata getrennte Aufzaehlung von Schluesselworten sein, die UDO als Metainformationen im Header der Datei ausgibt, in die das aktueller Kapitel ausgegeben wird. Manche Suchmaschinen benutzen diese Informationen um Seiten zu indizieren. Beispiel: !html_keywords Dirk Hagedorn, UDO6, Software, Converter F.8.11 !html_merge_nodes ------------------------- Nur eine HTML-Datei erzeugen (nur HTML) Typ & Position: Schalter, Vorspann Syntax: !html_merge_nodes Beschreibung: Wird dieser Schalter im Vorspann angeben, so werden alle Kapitel, Abschnitte, Unterabschnitte und Paragraphen bei der Umwandlung ins HTML-Format in einer Datei zusammengefasst. Siehe auch: !html_merge_subnodes, !html_merge_subsubnodes, !html_merge_subsubsubnodes F.8.12 !html_merge_subnodes ---------------------------- Abschnitte, Unterabschnitte und Paragraphen zusammenfassen (nur HTML) Typ & Position: Schalter, Vorspann Syntax: !html_merge_subnodes Beschreibung: Wird dieser Schalter im Vorspann eingesetzt, so wird ein Kapitel samt allen zugehoerigen Abschnitten, Unterabschnitten und Paragraphen in einer Datei zusammengefasst. Siehe auch: !html_merge_nodes, !html_merge_subsubnodes, !html_merge_subsubsubnodes F.8.13 !html_merge_subsubnodes ------------------------------- Unterabschnitte und Paragraphen zusammenfassen (nur HTML) Typ & Position: Schalter, Vorspann Syntax: !html_merge_subsubnodes Beschreibung: Wird dieser Schalter im Vorspann eingesetzt, so wird ein Abschnitt samt allen zugehoerigen Unterabschnitten und Paragraphen in einer Datei zusammengefasst. Siehe auch: !html_merge_nodes, !html_merge_subnodes, !html_merge_subsubsubnodes F.8.14 !html_merge_subsubsubnodes ---------------------------------- Paragraphen zusammenfassen (nur HTML) Typ & Position: Schalter, Vorspann Syntax: !html_merge_subsubsubnodes Beschreibung: Wird dieser Schalter im Vorspann eingesetzt, so werden alle Paragraphen eines Unterabschnitts in einer Datei zusammengefasst. Siehe auch: !html_merge_nodes, !html_merge_subnodes, !html_merge_subsubnodes F.8.15 !html_name ------------------ Dateinamen zuweisen (nur HTML) Typ & Position: Kommando, Hauptteil Syntax: !html_name Beschreibung: Taucht dieses Kommando innerhalb eines Kapitels, Abschnitts, Unterabschnitts oder Paragraphen auf, so wird dieser Name anstelle von KKAAUUPP (KK Kapitelnummer, AA Abschnittsnummer, UU Unterabschnittsnummer, PP Paragraphennummer) fuer die spaetere HTML-Datei verwendet. Beispiel: !html_name software F.8.16 !html_nodesize ---------------------- Groesse der Kapitelueberschriften setzen (HTML) Typ & Position: Kommando, Hauptteil Syntax: !html_nodesize Beschreibung: Mit diesem Befehl kann man die Groesse der Ueberschriften setzen, die UDO bei der Ausgabe von Kapiteln benutzen soll. Benutzt man untenstehendes Beispiel, so werden die Ueberschriften fuer Nodes mit

...

Beschreibung: Mit diesem Kommando koennen Sie UDO einen globalen Trennvorschlag unterbreiten. In "" sind die Stellen mit der Zeichenfolge !- zu markieren, an denen ein Wort getrennt werden darf. Im folgenden Beispiel wird gezeigt, wie man die moeglichen Trennstellen des Wortes "Silbentrennung" setzen kann. Beispiel: !hyphen Sil!-ben!-tren!-nung Siehe auch: Silbentrennung, !sloppy, !fussy, !- F.9 I... ========= F.9.1 !=info ------------- Zeile nicht beim Texinfo-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=info Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins Texinfo-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !info, !ifdest, Formatspezifische Befehle, raw- Umgebung F.9.2 !if ---------- Allgemeine Abfrage beginnen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !if [] Beschreibung: Dieses Kommando vereint die Abfragekommandos !iflang, !ifdest, !ifset und !ifos. Das (etwas ungluecklich gewaehlte) Beispiel zeigt, wie man abfragen kann, ob der Quelltext nach HTML oder mit deutschsprachigen Ausdruecken uebersetzt wird. Beispiel: !if [german,html] Siehe auch: !iflang, !ifdest, !ifset, !ifos, Abfragebefehle F.9.3 !ifdest -------------- Abfrage des Ausgabeformates Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifdest [] Beschreibung: Dieses Kommando fragt das aktuelle Ausgabeformat ab. Stimmt `' mit dem Kuerzel des Ausgabeforma- tes ueberein, so werden alle Zeilen umgewandelt, die zwischen !ifdest und !else bzw. !endif angebenen werden. Stimmt das Kuerzel nicht ueberein, so werden nur die Zeilen zwischen !else und !endif ausgewertet, sofern !else benutzt wird. Das Beispiel zeigt, wie man testen kann, ob die Quelldatei ins ST-Guide- oder WinHelp-Format umgewandelt wird. Beispiel: !ifdest [stg,win] Siehe auch: !else, !endif, !ifndest, !if, Abfragebefehle F.9.4 !iflang -------------- Abfrage der Ausgabesprache Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !iflang [] Beschreibung: Dieses Kommando fragt die aktuelle Ausgabesprache ab. Wird ein deutscher Text erzeugt und wird als `' die Zeichenkette `german' verwendet, so werden alle Zeilen ausgewertet, die bis !else bzw. !endif angegeben werden. Andernfalls werden alle Zeilen ausgerwertet, die zwischen !else und !endif angeben werden. Beispiel: !iflang [english] Siehe auch: !ifnlang, !ifdest, !language, Abfragebefehle F.9.5 !ifndest --------------- Abfrage des Ausgabeformates Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifndest [] Beschreibung: Dieses Kommando fragt das aktuelle Ausgabeformat ab. Stimmt `' nicht mit dem Kuerzel des Ausgabe- formates ueberein, so werden alle Zeilen umgewandelt, die zwischen !ifndest und !else bzw. !endif angebenen werden. Stimmt das Kuerzel ueberein, so werden nur die Zeilen zwischen !else und !endif ausgewertet, sofern !else benutzt wird. Beispiel: !ifndest [html] Siehe auch: !else, !endif, !ifdest, Abfragebefehle F.9.6 !ifnlang --------------- Abfrage der Ausgabesprache Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifnlang [] Beschreibung: Dieses Kommando fragt die aktuelle Ausgabesprache ab. Wird ein deutscher Text erzeugt und wird als `' nicht die Zeichenkette `german' verwendet, so werden alle Zeilen ausgewertet, die bis !else bzw. !endif angegeben werden. Andernfalls werden alle Zeilen ausgerwertet, die zwischen !else und !endif angeben werden. Beispiel: !ifnlang [english] Siehe auch: !iflang, !ifdest, !language, Abfragebefehle F.9.7 !ifnos ------------- Betriebssystem abfragen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifnos [] Beschreibung: Dieses Kommando testet das aktuelle Betriebssystem, auf dem UDO laeuft. Enthaelt "" keines der Kuerzel der Betriebssysteme, so wandelt UDO alle Zeilen ab dem folgenden !else um, falls !else benutzt wird. Das Beispiel zeigt, wie man abfragen kann, ob UDO !nicht auf einem Apple Macintosh laeuft. Beispiel: !ifnos [macos] Siehe auch: !ifos F.9.8 !ifnset -------------- Symbol abfragen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifnset [] Beschreibung: Mit diesem Abfragebefehl koennen Sie testen, ob ein Symbol fuer die Umwandlung weder in der Kommandozeile mit der Option -D noch mit !set gesetzt wurde. Wurde nicht gesetzt, so werden alle folgenden Zeilen umgewandelt, bis !else oder !endif auftaucht. Andernfalls werden nur die Zeilen umgewandelt, die !else folgen, sofern die Abfrage einen Sonst-Zweig besitzt. Das Beispiel zeigt, wie man abfragt, ob das Symbol "deutsch" nicht gesetzt wurde. Beispiel: !ifnset [deutsch] Siehe auch: !ifset, Abfragebefehle F.9.9 !ifos ------------ Betriebssystem abfragen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifos [] Beschreibung: Dieses Kommando testet das aktuelle Betriebssystem, auf dem UDO laeuft. Enthaelt "" eines der Kuerzel der Betriebssysteme, so wandelt UDO alle Zeilen zwischen !ifos und !endif bzw. !else um. Das Beispiel zeigt, wie man testen kann, ob UDO unter Linux laeuft. Beispiel: !ifos [linux] Siehe auch: !ifnos F.9.10 !ifset -------------- Symbol abfragen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ifset [] Beschreibung: Mit diesem Abfragebefehl koennen Sie testen, ob ein Symbol fuer die Umwandlung in der Kommandozeile mit der Option -D gesetzt wurde. Wurde gesetzt, so werden alle folgenden Zeilen umgewandelt, bis !else oder !endif auftaucht. Andernfalls werden nur die Zeilen umgewandelt, die !else folgen, sofern die Abfrage einen Sonst-Zweig besitzt. Das Beispiel zeigt, wie man abfragt, ob in der Kommandozeile -D deutsch benutzt wurde. Beispiel: !ifset [deutsch] Siehe auch: !ifnset F.9.11 !ignore_bottomline -------------------------- Ausgabe einer Fusszeile unterdruecken. Typ & Position: Schalter, Hauptteil Syntax: !ignore_bottomline Beschreibung: Wird dieser Schalter in einem Kapitel angegeben, so wird bei diesem Kapitel keine Fusszeile erzeugt. Im Gegensatz zu !no_bottomlines wird lediglich bei dem Kapitel, bei dem !ignore_bottomline benutzt wird, auf die Ausgabe einer Kopfzeile verzichtet. Siehe auch: !no_bottomlines F.9.12 !ignore_headline ------------------------ Ausgabe einer Kopfzeile unterdruecken. Typ & Position: Schalter, Hauptteil Syntax: !ignore_headline Beschreibung: Wird dieser Schalter in einem Kapitel angegeben, so wird bei diesem Kapitel keine Kopfzeile erzeugt. Im Gegensatz zu !no_headlines wird lediglich bei dem Kapitel, bei dem !ignore_headline benutzt wird, auf die Ausgabe einer Kopfzeile verzichtet. Siehe auch: !no_headlines F.9.13 !ignore_index --------------------- Ein Kapitel nicht in den Index uebernehmen Typ & Position: Schalter, Hauptteil Syntax: !ignore_index Beschreibung: Wird dieser Schalter in einem Kapitel angegeben, so wird das Kapitel nicht im Index angezeigt. Auch dann nicht, wenn man den Schalter !use_nodes_inside_index im Vorspann gesetzt hat. Siehe auch: !use_nodes_inside_index, !no_index, Indizes F.9.14 !ignore_links --------------------- Ein Kapitel nicht referenzieren Typ & Position: Schalter, Hauptteil Syntax: !ignore_links Beschreibung: Wird dieser Schalter in einem Kapitel angegeben, so werden keine automatischen Querverweise auf dieses Kapitel angelegt. Manuelle Links sind jedoch weiterhin moeglich. Siehe auch: Querverweise, (!link ...) F.9.15 !ignore_subsubsubtoc ---------------------------- In dem zugehoerigen Subsubnode kein "subsubsubtoc" ausgeben. Typ & Position: Schalter, Hauptteil Syntax: !ignore_subsubsubtoc Beschreibung: Wenn innerhalb eines Subsubnodes dieser Schalter gesetzt wird, so wird kein (automatisches) Inhalts- verzeichnis ausgegeben, in welchem die Paragraphen des Subsubnodes aufgelistet werden. Siehe auch: !use_auto_subsubsubtocs, !subsubsubtoc F.9.16 !ignore_subsubtoc ------------------------- In dem zugehoerigen Subnode kein "subsubtoc" ausgeben. Typ & Position: Schalter, Hauptteil Syntax: !ignore_subsubtoc Beschreibung: Wenn innerhalb eines Subnodes dieser Schalter gesetzt wird, so wird kein (automatisches) Unterinhaltsver- zeichnis ausgegeben. Siehe auch: !use_auto_subsubtocs, !subsubtoc F.9.17 !ignore_subtoc ---------------------- In dem zugehoerigen Node kein "subtoc" ausgeben. Typ & Position: Schalter, Hauptteil Syntax: !ignore_subtoc Beschreibung: Wenn innerhalb eines Nodes dieser Schalter gesetzt wird, so wird kein (automatisches) Unterinhaltsver- zeichnis ausgegeben. Siehe auch: !use_auto_subtocs, !subtoc F.9.18 !image -------------- Grafik ausgeben Typ & Position: Kommando, Hauptteil Syntax: !image Beschreibung: Dieses Kommando erzeugt in der Ausgabedatei Befehle zur Einbindung des Bildes. Die Endung der Datei sollte nicht uebergeben werden, da UDO dies selbst erledigt. UDO benutzt `.img' beim ST-Guide, CSTeX und Lindner-TeX, `.gif' fuer HTML, `.msp' oder `.pcx' fuer emTeX und `.bmp' fuer WinHelp. Wird `' angeben, so wird der Text als Bildunterschrift angegeben. Die Ausrichtung des Bildes richtet sich nach der eventuell vorhandenen aeusseren Umgebung. Zentrierte Bilder erhaelt man demnach, wenn man das !image-Kommando in einer center-Umgebung Beispiel: !image tiger Siehe auch: !no_images, (!img ...), Bilder, !html_img_suffix F.9.19 !image* --------------- Grafik ohne Nummer ausgeben Typ & Position: Kommando, Hauptteil Syntax: !image* Beschreibung: Der einzige Unterschied zum !image-Kommando ist der, dass in der Bildunterschrift keine Tabellennummer ausgegeben wird. Beispiel: !image* tiger Dies ist ein Tiger Siehe auch: !image F.9.20 !image_counter ---------------------- Abbildungszaehler setzen Typ & Position: Schalter, Vorspann Syntax: !image_counter [] Beschreibung: Mit diesem Schalter koennen Sie die Nummer festlegen, die bei der ersten Abbildung ausgegeben werden soll. Wuerde das Beispiel verwendet, so stuende unterhalb der ersten Abbildung folgendes: "Abbildung 5: ...". Beispiel: !image_counter 5 Siehe auch: Bilder, !image F.9.21 !include ---------------- Datei einbinden Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !include Beschreibung: Oeffnet die Datei "" und gibt deren umgewandelten Inhalt an der Stelle aus, an der dieses Kommando benutzt wurde. Beispiel: !include macros.ui Siehe auch: !vinclude, !rinclude, Verteilte Dokumente F.9.22 !index -------------- Indexeintrag bzw. Schluesselwort setzen Typ & Position: Kommando, Hauptteil Syntax: !index Beschreibung: wird fuer LaTeX als `\index {...}', fuer WinHelp als `K{\footnote K ...}', fuer RTF als `{\xe\v ...}' und fuer den ST-Guide als `@index ...' ausgegeben. kommt damit bei LaTeX und dem ST- Guide in den Index, bei WinHelp kann man im Suchen- Dialog nach diesem Schluesselwort suchen und bekommt die Namen der Kapitel aufgelistet, in denen !index benutzt wurde. kann beliebig oft benutzt werden, auch in mehreren Kapiteln. Beispiel: !index Eintrag !! Index Siehe auch: Indizes, !no_index, (!idx [ ]) F.9.23 !info ------------- Texinfo-Zeile ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !info Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins Texinfo-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !=info, !ifdest, Formatspezifische Befehle, raw- Umgebung F.9.24 !item ------------- Aufzaehlungspunkt einleiten Typ & Position: Kommando, Hauptteil Syntax: !item Beschreibung: Leitet einen neuen Aufzaehlungspunkt einer itemize- Umgebung oder enumerate-Umgebung ein. Dieser wird mit einer Marke bzw. mit einem alphanumerischen Wert ge- kennzeichnet. Beispiel: !item Dies ist der naechste Aufzaehlungspunkt Siehe auch: !item [ ], Einfache Aufzaehlungen, Numerierte Aufzaehlungen F.9.25 !item [ ] ----------------- Aufzaehlungspunkt einleiten Typ & Position: Kommando, Hauptteil Syntax: !item [] Beschreibung: Leitet einen neuen Aufzaehlungspunkt einer description-Umgebung oder einer xlist-Umgebung ein. Der Text, der in eckige Klammern eingefasst wird, wird bei der description-Umgebung in der Ausgabedatei fett dargestellt. Beispiel: !item [Titel:] Beschreibung Siehe auch: !item, Beschreibende Aufzaehlungen, Listen F.9.26 (!I)...(!i) ------------------- Kursiver Text Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!I)(!i) Beschreibung: wird kursiv dargestellt, falls moeglich. Beispiel: (!I)kursiv(!i) Siehe auch: Texthervorhebungen F.9.27 (!idx ...) ------------------ Indexeintraege im Text angeben Typ & Position: Platzhalter, Hauptteil Syntax: (!idx [] {[]} {[]} {[]} ) Beschreibung: Dient zum Erzeugen von Indizes direkt im Quelltext. Beispiel: (!idx [Wort] [Indexeintrag]) Siehe auch: Indizes, !no_index, !index F.9.28 (!ilink ...) -------------------- Querverweis mit Grafik, nur WinHelp und HTML Typ & Position: Platzhalter, Hauptteil Syntax: (!ilink [] [] []) Beschreibung: Dieser Platzhalter ist eine Kombination der Platzhal- ter (!image ...) und (!link ...) und dient dazu, einen Querverweis durch eine Grafik zu ermoeglichen. Dies ist momentan nur beim WinHelp- und HTML-Format moeglich. Im Beispiel wird das Bild disk.bmp bzw. disk.gif zur Darstellung des Links benutzt, das Sprungziel lautet "Download". Bei HTML wird als Alternativtext "UDO downloaden" ausgegeben. Bei allen anderen Formaten wird lediglich "UDO downloaden" ausgegeben. Beispiel: (!ilink [disk] [UDO downloaden] [Download] Siehe auch: (!img ...), (!link ...), Querverweise, Bilder F.9.29 (!img ...) ------------------ Grafik ausgeben Typ & Position: Platzhalter, Hauptteil Syntax: (!img [] []) Beschreibung: Benutzen Sie dieses Kommando, um ein Bild direkt im Text bei der Umwandlung nach HTML oder WinHelp auszugeben. Bei der Umwandlung nach HTML wird file.gif, bei WinHelp file.bmp benutzt, wobei UDO nicht ueberprueft, ob die jeweiligen Bilder existieren. Bei HTML wird als Alternativtext bentutzt. Bei den anderen Formaten wird nur ausgegeben. Beispiel: (!img [dh] [mein Logo]) Siehe auch: Bilder, !image F.10 L... ========== F.10.1 !=ldoc -------------- Zeile nicht beim Linuxdoc-SGML-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=ldoc Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins Linuxdoc-SGML-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !ldoc, !ifdest, Formatspezifische Befehle, raw- Umgebung F.10.2 !label -------------- Sprungmarke setzen Typ & Position: Kommando, Hauptteil Syntax: !label Beschreibung: Definiert eine Sprungmarke, die bei Hypertextformaten automatisch referenziert wird und auf die man durch die Link-Befehle verweisen kann. Beispiel: !label Sprungmarke Siehe auch: Sprungmarken, Querverweise, (!link ...), (!plink ...) F.10.3 !language ----------------- Sprache setzen Typ & Position: Kommando, Vorspann Syntax: !language [] Beschreibung: Mit diesem Kommando koennen Sie die Sprache der Begriffe setzen, die UDO fuer z.B. "Kapitel" oder "Inhaltsverzeichnis" benutzen soll. UDO verwendet standardmaessig deutschsprachige Ausdruecke. Das Beispiel zeigt, wie man die Ausgabesprache auf "Englisch" setzen kann. Beispiel: !language english Siehe auch: !iflang, !ifnlang, (!today) F.10.4 !ldoc ------------- Zeile nur fuer Linuxdoc-SGML ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !ldoc Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins Linuxdoc-SGML-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !=ldoc, !ifdest, Formatspezifische Befehle, raw- Umgebung F.10.5 !listoffigures ---------------------- Abbildungsverzeichnis ausgeben Typ & Position: Kommando, Hauptteil Syntax: !listoffigures Beschreibung: Dieses Kommando sorgt fuer die Ausgabe eines Abbildungsverzeichnisses, in dem alle Bilder, die eine Ueberschrift enthalten, aufgelistet werden. Man sollte dieses Kommando direkt nach !tableofcontents verwenden. Momentan wird dieser Befehl nur fuer LaTeX umgewandelt. Siehe auch: !image, !tableofcontents, !listoftables F.10.6 !listoftables --------------------- Tabellenverzeichnis ausgeben Typ & Position: Kommando, Hauptteil Syntax: !listoftables Beschreibung: Dieses Kommando sorgt fuer die Ausgabe eines Tabellenverzeichnisses, in dem alle Bilder, die eine Ueberschrift enthalten, aufgelistet werden. Man sollte dieses Kommando direkt nach !tableofcontents verwenden. Momentan wird dieser Befehl nur fuer LaTeX umgewandelt. Siehe auch: Tabellen, !tableofcontents, !listoffigures F.10.7 (!LaTeX) ---------------- LaTeX-Schriftzug ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!LaTeX) Beschreibung: Dieser Platzhalter wird bei der Umwandlung ins LaTeX-Format in `\LaTeX{}', ansonsten in "LaTeX" umgewandelt. Beispiel: Aus (!LaTeX) wird LaTeX. Siehe auch: (!TeX), (!LaTeXe) F.10.8 (!LaTeXe) ----------------- LaTeX2e-Schriftzug ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: LaTeX2e Beschreibung: Dieser Platzhalter wird bei der Umwandlung ins LaTeX-Format in `\LaTeXe{}', ansonsten in "LaTeX2e" umgewandelt. Beispiel: Aus (!LaTeXe) wird LaTeX2e. Siehe auch: (!TeX), (!LaTeX) F.10.9 (!laugh) ---------------- Emoticon ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!laugh) Beschreibung: Dieser Platzhalter wird durch einen lachenden Smiley ersetzt, der in Schreibmaschinenschrift ausgegeben wird. Beispiel: Aus (!laugh) wird :-) Siehe auch: (!grin) F.10.10 (!link~..) ------------------- Manuellen Querverweis durchfuehren. Typ & Position: Platzhalter, Hauptteil Syntax: (!link [] []) Beschreibung: Hiermit koennen Querverweise auf andere Kapitel oder Sprungmarken vorgenommen werden. Ausfuehrliche Infor- mationen finden man im Abschnitt "Querverweise". Beispiel: (!link [mir] [Kontaktadresse]) Siehe auch: (!xlink ...), (!plink~..), Querverweise F.11 M... ========== F.11.1 !=man ------------- Zeile nicht beim Manualpage-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=man Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins Manualpage-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !man, !ifdest, Formatspezifische Befehle, raw- Umgebung F.11.2 !macro -------------- Makro definieren Typ & Position: Kommando, Vorspann Syntax: !macro Beschreibung: Dieses Kommando definiert ein neues Makro. Bei der Umwandlung wird dann "(!)" durch "" ersetzt. Im Beispiel wuerde "(!DH)" durch "Dirk Hagedorn" ersetzt. Beispiel: !macro DH Dirk Hagedorn Siehe auch: Makros F.11.3 !maketitle ------------------ Titelseite ausgeben Typ & Position: Kommando, Hauptteil Syntax: !maketitle Beschreibung: Dieses Kommando erzeugt in der Zieldatei eine Titelseite, die aus den Informationen der unteren Befehle gebildet wird. Wenn !maketitle benutzt wird, sollte es nur direkt nach !begin_document eingesetzt werden. Siehe auch: Titelseite F.11.4 !man ------------ Zeile nur fuer das Manualpage-Format ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !man Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins Manualpage-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !=man, Formatspezifische Befehle, raw-Umgebung F.11.5 !man_lpp ---------------- Zeilen pro Seite setzen (nur Manualpage) Typ & Position: Kommando, Vorspann Syntax: !man_lpp Beschreibung: Setzt die Anzahl der Zeilen pro Seite ("lines per page") einer Manualpage. Im Fussbereich werden dann zusaetzlich Seitennummern ausgegeben. Beim Start der Umwandlung ist die Seitenlaenge undefiniert und es werden auch keine Fusszeilen ausgegeben. Beispiel: !man_lpp 60 Siehe auch: !use_formfeed F.11.6 !man_type ----------------- Programmtyp setzen (nur Manualpage) Typ & Position: Kommando, Vorspann Syntax: !man_type Beschreibung: "" wird bei der Ausgabe in eine Manualpage in Klammern in der Kopfzeile ausgegeben. Im Beispiel wuerde bei benutztem "!program udo" die Kopfzeile "udo(1)" ausgegeben. "" wird nicht als Dateiendung benutzt. Beispiel: !man_type 1 F.11.7 !medskip ---------------- Zwei zusaetzliche Leerzeilen einfuegen Typ & Position: Kommando, Hauptteil Syntax: !medskip Beschreibung: Dieser Befehl sorgt fuer die Ausgabe von zwei zusaetzlichen Leerzeilen und dient dazu, Absaetze deutlicher voneinander abzuheben. Bei der Umwandlung ins LaTeX-Format werden keine drei Leerzeilen sondern `\medskip' ausgegeben. Siehe auch: !smallskip, !bigskip F.12 N... ========== F.12.1 !newpage ---------------- Seitenumbruch erzeugen Typ & Position: Kommando, Hauptteil Syntax: !newpage Beschreibung: Erzeugt in der Ausgabedatei einen Seitenumbruch, falls das Ausgabeformat Seitenumbrueche unterstuetzt. Siehe auch: !use_formfeed F.12.2 !no_bottomlines ----------------------- Keine Fusszeilen benutzen Typ & Position: Schalter, Vorspann Syntax: !no_bottomlines [] Beschreibung: Mit diesem Kommando kann man die automatische Erzeugung von Fusszeilen der jeweiligen Ausgabeforma- te unterbinden. Im Beispiel wuerde dies bei der Umwandlung ins Pure-C-Help-Format geschehen. Beispiel: !no_bottomlines [pch] Siehe auch: !no_headlines F.12.3 !no_effects ------------------- Keine Schriftarten benutzen Typ & Position: Schalter, Vorspann Syntax: !no_effects [] Beschreibung: Schaltet die Benutzung von Schriftarten aus. Befehle wie (!B) werden dann nicht in Schriftarten umgewandelt, sondern einfach gefiltert. Im Beispiel wuerden diese bei der Umwandlung ins ASCII-Format nicht benutzt. Beispiel: !no_effects [asc] Siehe auch: Schriftarten F.12.4 !no_headlines --------------------- Keine Kopfzeilen benutzen Typ & Position: Schalter, Vorspann Syntax: !no_headlines [] Beschreibung: Mit diesem Kommando kann man die automatische Erzeugung von Fusszeilen der jeweiligen Ausgabeforma- te unterbinden. Im Beispiel wuerde dies bei der Umwandlung ins WinHelp-Format geschehen. Beispiel: !no_headlines [win] Siehe auch: !no_bottomlines F.12.5 !no_images ------------------ Keine Grafiken benutzen Typ & Position: Kommando, Vorspann Syntax: !no_images [] Beschreibung: Mit diesem Kommando laesst sich die Ausgabe von Befehlen zur Ausgabe von Bildern fuer ein Ausgabefor- mat unterbinden; !image wird dann einfach ignoriert. Im Beispiel wuerden keine Befehle zur Ausgabe von Bildern beim HTML-Format erzeugt. Beispiel: !no_images [html] Siehe auch: !image, (!img [ ]), Bilder F.12.6 !no_index ----------------- Keinen Index erzeugen und Index-Befehle ignorieren Typ & Position: Schalter, Vorspann Syntax: !no_index [] Beschreibung: Wird dieser Schalter im Vorspann benutzt, so werden fuer die angegebenen Formate die Befehle !index und (!idx ...) ignoriert. Desweiteren wird weder von UDO noch vom Zielformat ein Index erzeugt. Im Beispiel wuerden keine Indizes fuer das RTF ausgegeben. Beispiel: !no_index [rtf] Siehe auch: !index, (!idx ...) F.12.7 !no_numbers ------------------- Keine Kapitelnummern benutzen Typ & Position: Schalter, Vorspann Syntax: !no_numbers [] Beschreibung: Dieses Kommando schaltet die Ausgabe von Kapitelnummern aus. In Inhaltsverzeichnissen werden dann nur die Kapitelnamen ausgegeben. Im Beispiel wird dies fuer das WinHelp-Format und fuer HTML gemacht. Beispiel: !no_numbers [win,html] Siehe auch: !tableofcontents, !toc, !subtoc, !subsubtoc F.12.8 !no_preamble -------------------- Ausgabe von Zielformat-Preambeln unterdruecken. Typ & Position: Schalter, Vorspann Syntax: !no_preamble [] Beschreibung: Wird dieser Schalter im Vorspann angegeben, so gibt UDO fuer die angegebenen Formate keine Preambel aus. Das Beispiel zeigt, wie man dafuer sorgen kann, dass UDO keine LaTeX-Preambel erzeugt. Diesen Schalter sollte man nur dann verwenden, wenn man ausreichend Kenntnis ueber das jeweilige Zielformat besitzt. Beispiel: !no_preamble [tex] F.12.9 !no_quotes ------------------ Keine echten Anfuehrungsstriche benutzen Typ & Position: Schalter, Vorspann Syntax: !no_quotes [] Beschreibung: Schaltet die Umwandlung von doppelten in echte Anfuehrungszeichen und Apostrophen aus. Doppelte Anfuehrungszeichen und Apostrope werden dann durch einfache ersetzt. Beispiel: !no_quotes [asc,man] Siehe auch: Doppelte Anfuehrungszeichen, Doppelte Apostrophe F.12.10 !no_toc_subnodes ------------------------- Im Inhaltsverzeichnis keine Subnodes auflisten Typ & Position: Schalter, Vorspann Syntax: !no_toc_subnodes [] Beschreibung: Dieser Schalter dient zur Unterdueckung der Ausgabe von Subnodes und der tieferen Gliederungsebenen im Inhaltsverzeichnis. Das Beispiel zeigt, wie man die Auflistung beim WinHelp-Format unterdruecken kann. !no_toc_subnodes ist funktionsgleich mit !use_short_toc. Beispiel: !no_toc_subnodes [win] Siehe auch: !tableofcontents F.12.11 !no_toc_subsubnodes ---------------------------- Im Inhaltsverzeichnis keine Unterabschnitte auflisten Typ & Position: Schalter, Vorspann Syntax: !no_toc_subsubnodes [] Beschreibung: Wird dieser Schalter im Vorspann benutzt, so werden bei den angegebenen Formaten im Inhaltsverzeichnis keine Unterabschnitte und Pragraphen aufgelistet. Beispiel: !no_toc_subsubnodes [win,stg,html] Siehe auch: !tableofcontents, Inhaltsverzeichnisse F.12.12 !no_toc_subsubsubnodes ------------------------------- Typ & Position: Schalter, Vorspann Syntax: !no_toc_subsubsubnodes [] Beschreibung: Wird dieser Schalter im Vorspann benutzt, so werden bei den angegebenen Formaten im Inhaltsverzeichnis keine Pragraphen aufgelistet. Beispiel: !no_toc_subsubsubnodes [win,stg,html] Siehe auch: !tableofcontents, Inhaltsverzeichnisse F.12.13 !no_umlaute -------------------- Keine Umlaute benutzen Typ & Position: Schalter, Vorspann Syntax: !no_umlaute [] Beschreibung: Umlaute, die im Quelltext vorkommen, werden in der Zieldatei durch ae, oe, ue, ss, Ae, Oe und Ue ausgegeben. Im Beispiel wuerde dies bei der Umwandlung ins Manualpage-Format geschehen. Beispiel: !no_umlaute [man] Siehe auch: Sonderzeichen F.12.14 !no_verbatim_umlaute ----------------------------- Keine Umlaute in verbatim-Umgebungen verwenden Typ & Position: Schalter, Vorspann Syntax: !no_verbatim_umlaute [] Beschreibung: Umlaute, die im Quelltext innerhalb einer verbatim- Umgebung vorkommen, werden in der Zieldatei durch ae, oe, ue, ss, Ae, Oe und Ue ausgegeben. Im Beispiel wuerde dies bei der Umwandlung ins LaTeX-Format geschehen. Beispiel: !no_verbatim_umlaute [tex] Siehe auch: !begin_verbatim, !end_verbatim, Vorformatierter Text F.12.15 !no_xlinks ------------------- Keine externen Verweise benutzen Typ & Position: Schalter, Vorspann Syntax: !no_xlinks [] Beschreibung: Dieser Befehl schaltet die Benutzung von externen Verweisen aus, falls das formatzugehoerige Kuerzel angegeben wurde. Dies ist sinnvoll, falls man einen Hypertext mit HTML-Links versehen hat, die jedoch weder in einem WinHelp- noch ST-Guide-Hypertext Sinn machen wuerden. Beispiel: !no_xlink [stg] Siehe auch: (!xlink ...), Querverweise F.12.16 !node -------------- Kapitel einleiten Typ & Position: Kommando, Hauptteil Syntax: !node Beschreibung: Leitet ein Kapitel mit der Bezeichnung "" ein. Kapitel erscheinen in Inhaltsverzeichnissen. Beispiel: !node Titel des Kapitels Siehe auch: !pnode, !subnode, !subsubnode, Gliederung F.12.17 !node* --------------- Kapitel ohne Eintrag im Inhaltsverzeichnis einleiten Typ & Position: Kommando, Hauptteil Syntax: !node* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !node, mit der Ausnahme, dass "" nicht in Inhaltsver- zeichnissen erscheint. Beispiel: !node* Titel des versteckten Kapitels Siehe auch: !node, !pnode*, Gliederung F.12.18 !nop ------------- Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !nop Beschreibung: Dieser Befehl ("no operation") macht gar nichts und wird lediglich fuer Debugging-Zwecke eingesetzt. F.12.19 (!N)...(!n) -------------------- Fussnote erzeugen Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!N)(!n) Beschreibung: wird als Fussnote oder in Klammern dargestellt. Vor (!N) sollte sich kein Leerzeichen, Tabulator oder Zeilenumbruch befinden! Beispiel: der Text(!N)die Fussnote(!n) Siehe auch: Fussnoten F.12.20 (!nl) -------------- Manuellen Zeilenumbruch setzen Typ & Position: Platzhalter, Hauptteil Syntax: (!nl) Beschreibung: Durch (!nl) kann man einen Zeilenumbruch erzwingen. Vor (!nl) muss ein (festes) Leerzeichen stehen! Nach (!nl) muss ebenfalls ein (festes) Leerzeichen stehen oder (!nl) muss das letzte Wort einer Zeile sein. Beispiel: Ein manueller (!nl) Zeilenumbruch F.13 O... ========== F.14 P... ========== F.14.1 !=pch ------------- Zeile nicht beim Pure-C-Help-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=pch Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins Pure-C-Help-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !pch, !ifdest, Formatspezifische Befehle, raw- Umgebung F.14.2 !parwidth ----------------- Einstellen der Zeilenbreite Typ & Position: Schalter, Vorspann Syntax: !parwidth Beschreibung: Mit diesem Schalter kann man die Laenge der Zeilen einstellen, die UDO erzeugt. Standardmaessig benutzt UDO den Wert 70. kann Werte von 20 bis 200 annehmen. Bei den Formaten WinHelp, QuickView und HTML kann auch groessere Werte annehmen, falls der Schalter !use_outbut_buffer gesetzt wurde. Beispiel: !parwidth 98 Siehe auch: !use_output_buffer F.14.3 !pch ------------ Zeile fuer Pure-C-Help ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !pch Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins Pure-C-Help-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !=pch, Formatspezifische Befehle, raw-Umgebung F.14.4 !pnode -------------- Popup-Kapitel einleiten Typ & Position: Kommando, Hauptteil Syntax: !pnode Beschreibung: Identisch mit "!node", der Inhalt wird jedoch beim ST-Guide und bei WinHelp als Popup dargestellt. Beispiel: !pnode Titel des Popups Siehe auch: !psubnode, !psubsubnode F.14.5 !pnode* --------------- Popup-Kapitel ohne Eintrag im Inhaltsverzeichnis einleiten Typ & Position: Kommando, Hauptteil Syntax: !pnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !pnode, mit der Ausnahme, dass "" nicht in Inhaltsver- zeichnissen erscheint. Beispiel: !pnode* Titel des versteckten Popups Siehe auch: !pnode, !node*, Gliederung F.14.6 !program ---------------- Programmnamen fuer Titelseite definieren Typ & Position: Kommando, Vorspann Syntax: !program Beschreibung: "" wird auf der Titelseite unterhalb der Titelzeile ausgegeben. Desweiteren wird "" bei einigen Formaten zur Darstellung von Kopfzeilen herangezogen. Beispiel: !program UDO Siehe auch: !maketitle, !programimage, Titelseite F.14.7 !programimage --------------------- Programmgrafik fuer Titelseite definieren Typ & Position: Kommando, Vorspann Syntax: !programimage Beschreibung: Das Bild wird anstelle des Inhalts von !program unterhalb der Titelzeile auf der Titelseite ausgegeben. Beispiel: !programimage udo Siehe auch: !maketitle, !program, Titelseite F.14.8 !psubnode ----------------- Popup-Abschnitt einleiten Typ & Position: Kommando, Hauptteil Syntax: !psubnode Beschreibung: Identisch mit !subnode, der Inhalt wird jedoch beim ST-Guide und bei WinHelp als Popup dargestellt. Beispiel: !psubnode Ein Popup-Abschnitt Siehe auch: !pnode, !psubsubnode, !psubsubsubnode F.14.9 !psubnode* ------------------ Popup-Abschnitt ohne Eintrag im Inhaltsverzeichnis einleiten Typ & Position: Kommando, Hauptteil Syntax: !psubnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !psubnode, mit der Ausnahme, dass "" nicht in Inhaltsverzeichnissen erscheint. Beispiel: !psubnode* Ein versteckter Popup-Abschnitt Siehe auch: !psubnode, !subnode*, Gliederung F.14.10 !psubsubnode --------------------- Popup-Unterabschnitt einleiten Typ & Position: Kommando, Hauptteil Syntax: !psubsubnode Beschreibung: Identisch mit !subsubnode, der Inhalt wird jedoch beim ST-Guide und bei WinHelp als Popup dargestellt. Beispiel: !psubsubnode Ein Popup-Unterabschnitt Siehe auch: !pnode, !psubnode, !psubsubsubnode F.14.11 !psubsubnode* ---------------------- Popup-Unterabschnitt ohne Eintrag im Inhaltsverzeichnis Typ & Position: Kommando, Hauptteil Syntax: !psubsubnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !psubsubnode, mit der Ausnahme, dass "" nicht in Inhaltsverzeichnissen erscheint. Beispiel: !psubsubnode* Ein versteckter Popup-Unterabschnitt Siehe auch: !psubsubnode, !subsubnode*, Gliederung F.14.12 !psubsubsubnode ------------------------ Popup-Paragraph einleiten Typ & Position: Kommando, Hauptteil Syntax: !psubsubsubnode Beschreibung: Identisch mit !subsubsubnode, der Inhalt wird jedoch beim ST-Guide und bei WinHelp als Popup dargestellt. Beispiel: !psubsubsubnode Ein Popup-Unterabschnitt Siehe auch: !pnode, !psubnode, !psubsubnode F.14.13 !psubsubsubnode* ------------------------- Versteckten Popup-Paragraph einleiten Typ & Position: Kommando, Hauptteil Syntax: !psubsubsubnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !psubsubsubnode, mit der Ausnahme, dass "" nicht in Inhaltsverzeichnissen erscheint. Beispiel: !psubsubsubnode* Ein versteckter Popup-Unterabschnitt Siehe auch: !pnode, !psubnode, !psubsubnode, !psubsubsubnode F.14.14 (!plink~..) -------------------- Manuellen Seitenverweis setzen (nur TeX) Typ & Position: Platzhalter, Hauptteil Syntax: (!plink [] []) Beschreibung: Dieser Befehl ist derzeit nur fuer LaTeX sinnvoll und erzeugt einen Seitenbezug auf einen anderen Teil des Dokuments. Bei allen anderen Formaten wird lediglich ausgegeben. Beispiel: (!plink [Wort] [Sprungmarke]) Siehe auch: (!link ...), (!xlink ...), Querverweise F.15 R... ========== F.15.1 !=rtf ------------- Zeile nicht beim RTF ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=rtf Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins Rich Text Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !rtf, !ifdest, Formatspezifische Befehle, raw- Umgebung F.15.2 !rinclude ----------------- Datei 1:1 einbinden Typ & Position: Kommando, Hauptteil Syntax: !rinclude Beschreibung: Oeffnet die Datei "" und gibt deren Inhalt unformatiert an der Stelle aus, an der dieses Kommando benutzt wurde. Der Inhalt der Datei wird nicht eingerueckt oder zentriert ausgegeben. Die raw-Umgebung dient dazu, spezielle Formatbefehle einzubinden. Beispiel: !rinclude table.tex Siehe auch: !include, !vinclude, Verteilte Dokumente, raw- Umgebung F.15.3 !rtf ------------ Zeile fuer das RTF ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !rtf Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins Rich Text Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Beispiel: !rtf \par\pard Siehe auch: !=rtf, Formatspezifische Befehle, raw-Umgebung F.15.4 !rtf_charwidth ---------------------- Zeichenbreite einstellen (nur RTF) Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !rtf_charwidth Beschreibung: UDO benutzt zur Ausrichtung der xlist-Umgebungen und der Tabellen einen Wert fuer die Berechnung der Einrueckungen und Zellenbreiten. Dieser Wert ist so ausgelegt, dass auch nichtproportionale fette Grossschrift noch richtig formatiert wird. Bei normaler Schrift kann es jedoch sein, dass die Zeichen zu weit eingerueckt werden oder das Tabellenzellen zu breit erscheinen. Mit diesem Schalter koennen sie den Berechnungswert anpassen. Standardmaessig benutzt UDO den Wert 150. Beispiel: !rtf_charwidth 100 Siehe auch: Tabellen, Listen F.15.5 !rtf_monofont --------------------- Namen des Monospaced-Font fuer RTF setzen Typ & Position: Kommando, Vorspann Syntax: !rtf_monofont Beschreibung: Mit diesem Kommando kann man den Font setzen, der zur Darstellung von Klartext benutzt werden soll. Als Default verwendet UDO den Font "Courier New". Beispiel: !rtf_monofont Monospace 821 Siehe auch: !rtf_propfont F.15.6 !rtf_no_tables ---------------------- ASCII- statt RTF-Tabellen erzeugen Typ & Position: Schalter, Vorspann Syntax: !rtf_no_tables Beschreibung: Benutzt man diesen Schalter im Vorspann, so werden Tabellen nicht mit RTF-Kommandos erzeugt, sondern wie ASCII-Tabellen in einem nichtproportionalen Font ausgegeben. Der Schalter dient dazu, RTF-Dateien auch fuer solche Textverarbeitungssysteme zu erzeugen, die keine RTF-Tabellen importieren koennen. Siehe auch: Tabellensatz F.15.7 !rtf_propfont --------------------- Namen des Proportional-Fonts fuer RTF setzen Typ & Position: Kommando, Vorspann Syntax: !rtf_propfont Beschreibung: Mit diesem Kommando kann man den Font setzen, der zur Darstellung von Fliesstext und Ueberschriften benutzt werden soll. Als Default verwendet UDO den Font "Times New Roman". Beispiel: !rtf_propfont Dutch 801 Roman Siehe auch: !rtf_monofont F.16 S... ========== F.16.1 !=stg ------------- Zeile nicht beim ST-Guide-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=stg Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins ST-Guide-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !stg, !ifdest, Formatspezifische Befehle, raw- Umgebung F.16.2 !set ------------ Symbol setzen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !set Beschreibung: Mit diesem Kommando koennen Sie Symbole in einem Quelltext setzen, die man durch die Abfrage-Kommandos !ifset und !if testen kann. Symbole lassen sich auch durch die Option -D setzen. Mit dem Befehl !unset kann man gesetzte Symbole wieder loeschen. !set koennen Sie ueberall im Quelltext benutzen. Beispiel: !set UseColourGraphics Siehe auch: !unset, !ifset, !ifnset, Symbole F.16.3 !short -------------- Eine Umgebung "komprimiert" ausgeben Typ & Position: Schalter, Hauptteil Syntax: !short Beschreibung: Wird dieser Schalter zusammen mit dem Befehl zum Beginnen einer Umgebung angegeben, so wird diese Umgebung in komprimierter Form ausgegeben, sprich es werden zwischen den Aufzaehlungspunkten keine zusaetzlichen Zwischenraeume erzeugt. Das Beispiel zeigt, wie man eine "komprimierte" Itemize-Umgebung erzeugen kann. Beispiel: !begin_itemize !short Siehe auch: !begin_itemize, !begin_enumerate, !begin_description, !use_short_envs F.16.4 !sloppy --------------- Warnungen vor kurzen Zeilen ausschalten Typ & Position: Schalter, Hauptteil Syntax: !sloppy Beschreibung: Schaltet die Warnung vor kurzen Zeilen aus, die ausgegeben werden, wenn ein grober rechter Flatterrand erzeugt wird oder bei Benutzung von Blocksatz zuviele Leerzeichen in eine Zeile eingefuegt werden mussten. Bei der Umwandlung ins LaTeX-Format erfolgt keine Umsetzung in `\sloppy'! Siehe auch: !fussy, Fehlermeldungen, Silbentrennung F.16.5 !smallskip ------------------ Eine zusaetzliche Leerzeile einfuegen Typ & Position: Kommando, Hauptteil Syntax: !smallskip Beschreibung: Dieser Befehl sorgt fuer die Ausgabe von einer zusaetzlichen Leerzeile und dient dazu, Absaetze deutlicher voneinander abzuheben. Bei der Umwandlung ins LaTeX-Format wird keine Leerzeile sondern `\smallskip' ausgegeben. Siehe auch: !medskip, !bigskip F.16.6 !sort_hyphen_file ------------------------- Datei mit Trennvorschlaegen sortieren Typ & Position: Schalter, Vorspann Syntax: !sort_hyphen_file [] Beschreibung: Wird dieser Schalter im Vorspann benutzt, so liest UDO nach der Umwandlung der Quelldatei die Datei mit den gesicherten Trenvorschlaegen neu ein, sortiert die Zeilen und entfernt doppelte Eintraege. Das Beispiel zeigt, wie man diese Option fuer die Umwandlung ins ASCII- und ST-Guide-Format aktivieren kann. Beispiel: !sort_hyphen_file [asc,stg] Siehe auch: !hyphen F.16.7 !stg ------------ Zeile fuer den ST-Guide ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !stg Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins ST-Guide-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Beispiel: !stg @subject "Dokumentation\Utilities" Siehe auch: !=stg, Formatspezifische Befehle, raw-Umgebung F.16.8 !stg_no_database ------------------------ Keine Database-Zeile ausgeben (nur ST-Guide) Typ & Position: Schalter, Vorspann Syntax: !stg_no_database Beschreibung: Wird dieser Schalter im Vorspann angegeben, so wird bei der Umwandlung ins ST-Guide-Format die Ausgabe der @database-Zeile unterbunden. Standardmaessig erzeugt UDO diese Zeile selber aus den Daten von !title und !program. F.16.9 !street --------------- Strasse des Autors fuer den Adressblock der Titelseite setzen Typ & Position: Kommando, Vorspann Syntax: !street Beschreibung: "" wird auf der Titelseite unterhalb des Namens des Autors ausgegeben. Ansonsten findet "" keine weitere Verwendung. Beispiel: !street Asmecke 1 Siehe auch: !maketitle, Titelseite F.16.10 !subheading -------------------- Eine Abschnitts-Ueberschrift ausgeben Typ & Position: Kommando, Hauptteil Syntax: !subheading Beschreibung: Dieser Befehl erzeugt eine Zeile mit `', der in der gleichen Schriftart und -groesse wie eine Abschnitts-Ueberschrift ausgegeben wird. Beispiel: !subheading Eine Ueberschrift Siehe auch: !heading, !subsubheading F.16.11 !subnode ----------------- Abschnitt einleiten Typ & Position: Kommando, Hauptteil Syntax: !subnode Beschreibung: Leitet einen Abschnitt mit der Bezeichnung "" ein. Abschnitte erscheinen in Inhaltsverzeichnissen. Beispiel: !subnode Titel des Abschnitts Siehe auch: !psubnode, !node, !subsubnode, Gliederung F.16.12 !subnode* ------------------ Abschnitt ohne Eintrag im Inhaltsverzeichnis einleiten Typ & Position: Kommando, Hauptteil Syntax: !subnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !subnode, mit der Ausnahme, dass "" nicht in Inhaltsverzeichnissen erscheint. Beispiel: !subnode* Titel des versteckten Abschnitts Siehe auch: !subnode, !psubnode*, Gliederung F.16.13 !subsubheading ----------------------- Eine Unterabschnitts-Ueberschrift ausgeben Typ & Position: Kommando, Hauptteil Syntax: !subsubheading Beschreibung: Dieser Befehl erzeugt eine Zeile mit `', der in der gleichen Schriftart und -groesse wie eine Unterabschnitts-Ueberschrift ausgegeben wird. Beispiel: !subsubheading Eine Ueberschrift Siehe auch: !heading, !subheading F.16.14 !subsubnode -------------------- Unterabschnitt einleiten Typ & Position: Kommando, Hauptteil Syntax: !subsubnode Beschreibung: Leitet einen Unterabschnitt mit der Bezeichnung "" ein. Unterabschnitte erscheinen in Inhalts- verzeichnissen. Beispiel: !subsubnode Titel des Unterabschnitts Siehe auch: !psubsubnode, !node, !subnode, Gliederung F.16.15 !subsubnode* --------------------- Unterabschnitt ohne Eintrag im Inhaltsverzeichnis einleiten Typ & Position: Kommando, Hauptteil Syntax: !subsubnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !subsubnode, mit der Ausnahme, dass "" nicht in Inhaltsverzeichnissen erscheint. Beispiel: !subsubnode* Titel des versteckten Unterabschnitts Siehe auch: !subsubnode, !psubsubnode*, Gliederung F.16.16 !subsubsubheading -------------------------- Eine Paragraphen-Ueberschrift ausgeben Typ & Position: Kommando, Hauptteil Syntax: !subsubsubheading Beschreibung: Dieser Befehl erzeugt eine Zeile mit `', der in der gleichen Schriftart und -groesse wie eine Paragraphen-Ueberschrift ausgegeben wird. Beispiel: !subsubsubheading Eine Ueberschrift Siehe auch: !heading, !subheading, !subsubheading F.16.17 !subsubsubnode ----------------------- Paragraph einleiten Typ & Position: Kommando, Hauptteil Syntax: !subsubsubnode Beschreibung: Leitet einen Paragraph mit der Bezeichnung "" ein. Ein Paragraph ist die vierte Gliederungsebene und wird mit #.#.#.# numeriert. Beispiel: !subsubsubnode Titel des Paragraphs Siehe auch: !psubsubsubnode, !subnode, !subsubnode, Gliederung F.16.18 !subsubsubnode* ------------------------ Paragraph ohne Eintrag im Inhaltsverzeichnis einleiten Typ & Position: Kommando, Hauptteil Syntax: !subsubsubnode* Beschreibung: Dieses Kommando hat die gleiche Funktion wie !subsubsubnode, mit der Ausnahme, dass "" nicht in Inhaltsverzeichnissen erscheint. Beispiel: !subsubsubnode* Titel des Paragraphs Siehe auch: !psubsubsubnode, !subnode, !subsubnode, Gliederung F.16.19 !subsubtoc ------------------- Unterabschnitte auflisten Typ & Position: Kommando, Hauptteil Syntax: !subsubtoc [] Beschreibung: Listet in Form eines Inhaltsverzeichnisses alle Unterabschnitte des aktuellen Abschnitts aus und sorgt dafuer, dass man in Hypertexten zu den Unterabschnitten weiterverzweigen kann. UDO gibt dieses Unterinhaltsverzeichnis nicht aus, wenn in dem Abschnitt der Schalter !ignore_subsubtoc verwendet wurde. Die Ausgabe dieser Unterinhaltsverzeichnisse laesst sich durch !use_auto_subsubtocs auch automati- sieren. Beispiel: !subsubtoc [html,pch,stg,win] Siehe auch: !tableofcontents, !toc, !subtoc, !use_auto_subsubtocs, Inhaltsverzeichnisse F.16.20 !subtoc ---------------- Abschnitte auflisten Typ & Position: Kommando, Hauptteil Syntax: !subtoc [] Beschreibung: Listet in Form eines Inhaltsverzeichnisses alle Abschnitte des aktuellen Kapitels aus und sorgt dafuer, dass man in Hypertexten zu den Abschnitten weiterverzweigen kann. UDO gibt dieses Unterinhalts- verzeichnis nicht aus, wenn in dem Abschnitt der Schalter !ignore_subtoc verwendet wurde. Die Ausgabe dieser Unterinhaltsverzeichnisse laesst sich durch !use_auto_subtocs auch automatisieren. Beispiel: !subtoc [html,pch,stg,win] Siehe auch: !tableofcontents, !subtoc, !subsubtoc, !use_auto_subtocs, Inhaltsverzeichnisse F.16.21 (!short_today) ----------------------- Systemdatum in kurzer Schreibweise einsetzen. Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!short_today) Beschreibung: Dieser Platzhalter wird durch das bei der Umwandlung aktuelle Systemdatum in kurzer Form ersetzt. Beispiel: Aus (!short_today) wird 04.01.1997 Siehe auch: (!today), !language F.17 T... ========== F.17.1 !=tex ------------- Zeile nicht beim LaTeX-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=tex Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins LaTeX-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO- Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !tex, !ifdest, Formatspezifische Befehle, raw- Umgebung F.17.2 !table_caption ---------------------- Titel der naechsten Tabelle setzen Typ & Position: Kommando, Hauptteil Syntax: !table_caption Beschreibung: Mit diesem Kommando wird der Titel der naechsten Tabelle gesetzt. Dieses Kommando muss ausserhalb der table-Umgebung benutzt werden. Fuer die erste Tabelle wuerde UDO dann beim Beispiel als Titel "Tabelle 1: Ein Tabellentitel" ausgeben. Beispiel: !table_caption Ein Tabellentitel Siehe auch: Tabellen, !table_caption* F.17.3 !table_caption* ----------------------- Titel der naechsten Tabelle setzen Typ & Position: Kommando, Hauptteil Syntax: !table_caption* Beschreibung: Der einzige Unterscheid zum Kommando !table_caption ist der, dass UDO dem Tabellentitel nicht "Tabelle :" voranstellt. Beispiel: !table_caption* Ein Tabellentitel Siehe auch: Tabellen, !table_caption F.17.4 !table_counter ---------------------- Tabellenzaehler setzen Typ & Position: Schalter, Vorspann Syntax: !table_counter [] Beschreibung: Mit diesem Schalter koennen Sie die Nummer festlegen, die bei der ersten Tabelle ausgegeben werden soll. Wuerde das Beispiel verwendet, so stuende unterhalb der ersten Tabelle folgendes: "Tabelle 5: ...". Beispiel: !table_counter 5 Siehe auch: Tabellen F.17.5 !tableofcontents ------------------------ Inhaltsverzeichnis ausgeben Typ & Position: Kommando, Hauptteil Syntax: !tableofcontents Beschreibung: Dieses Kommando gibt ein komplettes Inhaltsverzeich- nis aus, welches durch ausgabeformatspezifische Kommandos eingefasst und in Hypertexten auf einer eigenen Seite dargsetellt wird. Dieses Kommando sollte direkt nach !begin_document bzw. nach !maketitle eingesetzt werden. Der Umfang des Inhalts- verzeichnis laesst sich durch den Schalter !use_short_toc verkleinern. Siehe auch: Inhaltsverzeichnisse, !use_short_toc F.17.6 !tabwidth ----------------- Tabulatorbreite fuer verbatim-Umgebungen setzen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !tabwidth Beschreibung: Enthalten Zeilen einer verbatim-Umgebung Tabulatoren, so wandelt UDO diese entsprechend dem angegebenen in Leerzeichen um. Wollen Sie beispielsweise Sourcecodes darstellen, die sie mit einer Tabulatorweite von 4 erstellt haben, so sollten Sie das folgende Beispiel vor der verbatim-Umgebung bzw. vor !vinclude angeben. !tabwidth kann ueberall und beliebig oft im Quelltext angegeben werden. wird jeweils fuer die naechste verbatim-Umgebung verwendet. Standardmaessig benutzt UDO den Wert 8. Beispiel: !tabwidth 4 Siehe auch: verbatim-Umgebung, !vinclude F.17.7 !tex ------------ Zeile fuer LaTeX ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !tex Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins LaTeX-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Beispiel: !tex \parindent 0pt Siehe auch: !=tex, Formatspezifische Befehle, raw-Umgebung F.17.8 !tex_2e --------------- LaTeX2e-Kommandos benutzen (nur TeX) Typ & Position: Schalter, Vorspann Syntax: !tex_2e Beschreibung: UDO erzeugt bei der Umwandlung ins LaTeX-Format spezielle LaTeX2e-Kommandos, wie eine Preambel fuer LaTeX2e oder `\textbf{...}' anstelle von `{\bf ...}' bei der Umwandlung von (!B). F.17.9 !tex_dpi ---------------- Grafikaufloesung setzen (nur TeX) Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !tex_dpi Beschreibung: Setzt die Aufloesung, mit der Bilder in LaTeX ausgegeben werden sollen. Beim Lindner-TeX wird dieser Wert herangezogen, um den Header eines GEM- Images zu veraendern. Beispiel: !tex_dpi 100 Siehe auch: !tex_strunk, !tex_lindner, !tex_emtex, !image, Bilder F.17.10 !tex_emtex ------------------- Grafikmakros fuer emTeX erzeugen (nur TeX) Typ & Position: Schalter, Vorspann Syntax: !tex_emtex Beschreibung: Gibt an, dass bei der Einbindung von Windows- Paintshop-Bildern ein TeX-Makro fuer emTeX erzeugt werden soll. Siehe auch: !tex_strunk, !tex_lindner, !image, Bilder F.17.11 !tex_lindner --------------------- Grafikmakros fuer Lindner-TeX erzeugen (nur TeX) Typ & Position: Schalter, Vorspann Syntax: !tex_lindner Beschreibung: Gibt an, dass bei der Einbindung von GEM-Images ein TeX-Makro fuer das Lindner-TeX erzeugt werden soll. Siehe auch: !tex_strunk, !tex_emtex, !image, Bilder F.17.12 !tex_strunk -------------------- Grafikmakros fuer CSTeX erzeugen (nur TeX) Typ & Position: Schalter, Vorspann Syntax: !tex_strunk Beschreibung: Gibt an, dass bei der Einbindung von GEM-Images ein TeX-Makro fuer das CS- oder MultiTeX erzeugt werden soll. Siehe auch: !tex_lindner, !tex_emxtex, !image, Bilder F.17.13 !tex_verb ------------------ Verbatim-Zeichen fuer TeX setzen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !tex_verb Beschreibung: "" wird als Klammerungszeichen fuer den LaTeX-Befehl `\verb' verwendet. Bei der naechsten Umwandlung von (!V) und (!v) wird dann "" benutzt. Als Defaultzeichen benutzt UDO "+". Beispiel: !tex_verb | Siehe auch: (!V)...(!v) F.17.14 !title --------------- Dokumenttitel definieren Typ & Position: Kommando, Vorspann Syntax: !title Beschreibung: "" wird auf der Titelseite vor dem Inhalt von !program ausgegeben. "" wird darueber hinaus noch zur Darstellung von Kopfzeilen bei einigen Formaten herangezogen. Beispiel: !title Die Anleitung zu Siehe auch: !maketitle, Titelseite F.17.15 !toc ------------- Inhaltsverzeichnis "alleine" ausgeben Typ & Position: Kommando, Hauptteil Syntax: !toc [] Beschreibung: Gibt ein komplettes Inhaltsverzeichnis aus. Im Gegensatz zu !tableofcontents wird dabei bei Hypertextformaten keine eigene Seite erzeugt. Im Beispiel wuerde das Inhaltsverzeichnis bei der Umwandlung ins ST-Guide-Format ausgegeben. Beispiel: !toc [stg] Siehe auch: !tableofcontents, !subtoc, !subsubtoc, Inhaltsver- zeichnisse F.17.16 !toc_offset -------------------- Offset fuer die Kapitelnumerierung setzen Typ & Position: Schalter, Vorspann Syntax: !toc_offset Beschreibung: "" wird bei der Ausgabe der Kapitelnummern zu der aktuellen Nummer hinzugezaehlt. Im Beispiel wuerde das erste Kapitel mit der Nummer 10 ausgegeben. Es koennen auch negative Werte benutzt werden. Dieser Schalter hat keine Wirkung auf Kapitel des Anhangs. Beispiel: !toc_offset 9 Siehe auch: !node, !tableofcontents F.17.17 !town -------------- Wohnort des Autors fuer den Adressblock der Titelseite setzen Typ & Position: Kommando, Vorspann Syntax: !town Beschreibung: "" wird auf der Titelseite unterhalb der Strasse des Autors ausgegeben. Ansonsten findet "" keine weitere Verwendung. Beispiel: !town D-59846 Sundern Siehe auch: !maketitle, !street, Titelseite F.17.18 (!T)...(!t) -------------------- Text in Schreibmaschinenschrift ausgeben- Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!T)(!t) Beschreibung: wird in Schreibmaschinenschrift dargestellt, falls moeglich. Diese Schriftart wird von fast allen Ausgabeformaten unterstuetzt. Beispiel: (!T)monospaced(!t) Siehe auch: Texthervorhebungen F.17.19 (!TeX) --------------- TeX-Schriftzug ausgeben. Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!TeX) Beschreibung: Dieser Platzhalter wird bei der Umwandlung ins LaTeX-Format in `\TeX{}', ansonsten in "TeX" umgewandelt. Beispiel: Aus (!TeX) wird TeX. Siehe auch: (!LaTeX), (!LaTeXe) F.17.20 (!today) ----------------- Systemdatum in langer Schreibweise ausgeben. Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!today) Beschreibung: Dieser Platzhalter wird durch das bei der Umwandlung aktuelle Systemdatum in langer Form ersetzt. Beispiel: Aus (!today) wird 4. Januar 1997 Siehe auch: (!short_today), !language F.18 U... ========== F.18.1 !universal_charset -------------------------- Universellen Zeichensatz einschalten Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !universal_charset [ on | off ] Beschreibung: `!universal_charset [on]' schaltet die Verwendung des universellen Zeichensatzes ein, `!universal_charset [off]' wieder aus. Stan- dardmaessig wird der universelle Zeichensatz von UDO nicht verwendet, da die Umwandlung der universellen Zeichen eine zeitaufwendige Angelegenheit ist. Beispiel: !universal_charset [on] Siehe auch: Universeller Zeichensatz F.18.2 !unset -------------- Symbol entfernen Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !unset Beschreibung: Mit diesem Kommando koennen Symbole, die Sie mit !set oder der Kommandozeilenoption -D gesetzt haben, wieder entfernen. Dieses Kommando darf ueberall im Quelltext verwendet werden. Siehe auch: !set, !ifset, !ifnset, Symbole F.18.3 !use_about_udo ---------------------- Informationsseite einbauen Typ & Position: Schalter, Vorspann Syntax: !use_about_udo [] Beschreibung: Die Benutzung dieses Schalters erzeugt am Ende der erzeugten Datei (sofern das zugehoerige Format als Kuerzel uebergeben wurde) eine kleine Seite mit In- formationen zu UDO. Wer ein bisschen Werbung fuer UDO machen moechte, sollte dieses Kommando im Vorspann einsetzen und im Quelltext das Wort "UDO6" einmal unterbringen, da diese Werbeseite nicht im Inhalts- verzeichnis aufgefuehrt wird. Danke! Beispiel: !use_about_udo [stg,win] F.18.4 !use_alias_inside_index ------------------------------- Aliase automatisch in den Index uebernehmen Typ & Position: Schalter, Vorspann Syntax: !use_alias_inside_index [] Beschreibung: Wird dieser Schalter im Vorspann angegeben, so werden automatisch alle Aliase im Index der angegebenen Formate angezeigt. Beispiel: !use_alias_inside_index [win,stg] Siehe auch: Indizes, !no_index, !index, !alias F.18.5 !use_ansi_tables ------------------------ Tabellen mit ANSI-Grafikzeichen erzeugen Typ & Position: Schalter, Vorspann Syntax: !use_ansi_tables [] Beschreibung: Wird dieser Schalter im Vorspann eingesetzt, so werden bei den angegebenen Formaten die Tabellen mit den Grafikzeichen aus dem DOS-Zeichensatz erzeugt. Der Schalter ist wirkungslos fuer LaTeX, WinHelp und HTML. Beispiel: !use_ansi_tables [stg] Siehe auch: !begin_table, Tabellen F.18.6 !use_auto_subsubsubtocs ------------------------------- Automatische Auflistung aller Paragraphen Typ & Position: Kommando, Vorspann Syntax: !use_auto_subsubsubtocs [] Beschreibung: Schaltet den automatischen internen Aufruf des ! subsubsubtoc-Kommandos ein. Am Ende eines jeden Abschnitts werden dann automatisch alle dem Unterabschnitt zugehoerigen Paragraphen in Form eines Inhaltsverzeichnisses ausgegeben. Beispiel: !use_auto_subsubsubtocs [html,pch,stg,win] Siehe auch: !subsubsubtoc, !ignore_subsubsubtoc, Inhaltsverzeich- nisse F.18.7 !use_auto_subsubtocs ---------------------------- Automatische Auflistung aller Unterabschnitte Typ & Position: Kommando, Vorspann Syntax: !use_auto_subsubtocs [] Beschreibung: Schaltet den automatischen internen Aufruf des ! subsubtoc-Kommandos ein. Am Ende eines jeden Abschnitts werden dann automatisch alle dem Abschnitt zugehoerigen Unterabschnitte in Form eines Inhalts- verzeichnisses ausgegeben. Beispiel: !use_auto_subsubtocs [html,pch,stg,win] Siehe auch: !subsubtoc, !ignore_subsubtoc, Inhaltsverzeichnisse F.18.8 !use_auto_subtocs ------------------------- Automatische Auflistung aller Abschnitte Typ & Position: Kommando, Vorspann Syntax: !use_auto_subtocs [] Beschreibung: Schaltet den automatischen internen Aufruf des ! subtoc-Kommandos ein. Am Ende eines jeden Kapitels werden dann automatisch alle dem Kapitel zugehoerigen Abschnitte in Form eines Inhaltsverzeichnisses ausgegeben. Beispiel: !use_auto_subtocs [html,pch,stg,win] Siehe auch: !subtoc, !ignore_subtoc, Inhaltsverzeichnisse F.18.9 !use_chapter_images --------------------------- Kapitelgrafiken statt -text benutzen Typ & Position: Schalter, Vorspann Syntax: !use_chapter_images [] Beschreibung: Gibt an, ob fuer die angegebenen Formate Grafiken anstelle von Kapitelueberschriften werden sollen, falls bei einem Kapitel !chapterimage benutzt wird und die angegebene Datei vorhanden ist. Beispiel: !use_chapter_images [html,win,stg] Siehe auch: !chapterimage F.18.10 !use_formfeed ---------------------- Formfeed-Befehl mit ausgeben Typ & Position: Schalter, Vorspann Syntax: !use_formfeed [] Beschreibung: Mit diesem Schalter kann man UDO mitteilen, dass beim !newpage-Befehl bei ASCII-Formaten ein Formfeed (ASCII 12) ausgegeben werden soll. Beispiel: !use_formfeed [asc] Siehe auch: !man_lpp, !newpage F.18.11 !use_justification --------------------------- Blocksatz einschalten Typ & Position: Schalter, Vorspann Syntax: !use_justification [] Beschreibung: Fuer die angegebenen Formate werden Absaetze im Blocksatz ausgegeben. Fuer LaTeX und RTF spielt der Schalter keine Rolle, da dort immer Blocksatz erzeugt wird. Fuer WinHelp und HTML spielt der Schalter auch keine Rolle, da dort kein Blocksatz erzeugt werden kann. Beispiel: !use_justification [asc] F.18.12 !use_label_inside_index -------------------------------- Labels automatisch in den Index uebernehmen Typ & Position: Schalter, Vorspann Syntax: !use_label_inside_index [] Beschreibung: Wird dieser Schalter im Vorspann angegeben, so werden automatisch alle Labels im Index der angegebenen Formate angezeigt. Beispiel: !use_label_inside_index [win,stg] Siehe auch: Indizes, !no_index, !index, !label F.18.13 !use_nodes_inside_index -------------------------------- Kapitel automatisch in den Index uebernehmen Typ & Position: Schalter, Vorspann Syntax: !use_nodes_inside_index [] Beschreibung: Wird dieser Schalter im Vorspann angegeben, so werden automatisch alle Kapitelueberschriften im Index der angegebenen Formate angezeigt. Beispiel: !use_nodes_inside_index [win,stg] Siehe auch: Indizes, !no_index, !index, !node F.18.14 !use_output_buffer --------------------------- Ausgabepuffer anfordern Typ & Position: Schalter, Vorspann Syntax: !use_output_buffer [] Beschreibung: UDO bricht bei allen Formaten an der durch !parwidth definierten Position die Zeilen um. Bei WinHelp und HTML kann es dadurch passieren, dass Querverweise nicht erkannt werden. Wird dieser Schalter benutzt, so werden Absaetze erst komplett in einem ausreichend grossen Puffer erzeugt, dann die Querverweise angelegt und erst dann die Zeilen umbrochen. Da dies die Umwandlungsdauer negativ beeinflusst, benutzt UDO standardmaessig keinen Ausgabepuffer. Im Beispiel wuerden Ausgabepuffer fuer WinHelp und HTML angefordert. Beispiel: !use_output_buffer [win,html] Siehe auch: !parwidth F.18.15 !use_short_envs ------------------------ "Komprimierte" Umgebungen benutzen Typ & Position: Schalter, Vorspann Syntax: !use_short_envs [] Beschreibung: Wird dieser Schalter im Vorspann angegeben, so werden alle Umgebungen (mit Ausnahme der verbatim-Umgebung) ohne zusaetzlichen Zwischenraeume ausgegeben. Im Beispiel wuerde dieser Schalter fuer das ASCII-Format gesetzt. Beispiel: !use_short_envs [asc] Siehe auch: !begin_itemize, !begin_enumerate, !begin_description, !begin_xlist F.18.16 !use_short_toc ----------------------- Kurze Inhaltsverzeichnisse benutzen Typ & Position: Kommando, Vorspann Syntax: !use_short_toc [] Beschreibung: Wird dieses Kommando im Vorspann benutzt, so wird fuer die angegebenen Ausgabeformate ein kurzes In- haltsverzeichnis erzeugt. Im Haupt-Inhaltsverzeichnis werden nur die Kapitelnamen und in Kapiteln nur die Namen der Abschnitte ausgegeben. Im Beispiel wuerde der Umfang der Inhaltsverzeichnisse bei allen Ausga- beformaten eingeschraenkt. Beispiel: !use_short_toc [all] Siehe auch: !tableofcontents, Inhaltsverzeichnisse F.18.17 !use_style_book ------------------------ Zieldatei als "Buch" ausgeben Typ & Position: Schalter, Vorspann Syntax: !use_style_book [] Beschreibung: UDO gibt bei der Umwandlung ins LaTeX-Format !node mit `\chapter' anstatt `\section', !subnode mit `\section' anstatt `\subsection' und !subsubnode mit `\subsection' anstatt `\subsubsection' aus. Als Documentstyle bzw. Documentclass wird `book' verwendet. Bei den anderen Formaten wird eine LaTeX- aehnliche Ausgabe erzeugt, d.h. Kapitel werden auch mit "Kapitel #:" bzw. "Anhang X:" beschriftet. Beispiel: !use_style_book [tex] Siehe auch: !no_preambel F.18.18 (!U)...(!u) -------------------- Unterstrichenen Text ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!U)(!u) Beschreibung: wird unterstrichen dargestellt, falls moeglich. Diese Schriftart sollte sparsam eingesetzt werden. Beispiel: (!U)unterstrichen(!u) Siehe auch: Texthervorhebungen F.19 V... ========== F.19.1 !verbatimsize --------------------- Schriftgroesse fuer verbatim-Umgebungen einstellen Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !verbatimsize [tiny|small|normal|large|huge] Beschreibung: Mit diesem Schalter koennen Sie festlegen, in welcher Schriftgroesse Text erscheinen soll, der in einer verbatim-Umgebung steht. Der Schalter kann ueberall im Quelltext verwendet werden. Die kleinste Schriftgroesse wird mit `tiny', die groesste mit `huge' gesetzt. Die Standardgroesse fuer verbatim- Umgebungen ist `normal'. Beispiel: !verbatimsize [small] Siehe auch: verbatim-Umgebung F.19.2 !version ---------------- Versionsnummer des Programms fuer die Titelseite setzen Typ & Position: Kommando, Vorspann Syntax: !version Beschreibung: wird unterhalb des Programmnamens auf der Titelseite ausgegeben. Ansonsten findet keine weitere Verwendung. Beispiel: !version Release 6 Siehe auch: !maketitle, Titelseite F.19.3 !vinclude ----------------- Datei einbinden und in einer verbatim-Umgebung darstellen Typ & Position: Kommando, Hauptteil Syntax: !vinclude Beschreibung: Oeffnet die Datei namens und gibt deren Inhalt als Klartext an der Stelle aus, an der dieses Kommando benutzt wurde. Etwaige Einrueckungen werden dabei beruecksichtigt, Zentrierungen jedoch nicht. Tabulatoren werden abhaengig von !tabwidth umgewandelt. Beispiel: !vinclude hello.c Siehe auch: !tabwidth, !include, Verteilte Dokumente, Verbatim- Umgebung F.19.4 (!V)...(!v) ------------------- Klartext ausgeben Typ & Position: Platzhalter, Vorspann & Hauptteil Syntax: (!V)(!v) Beschreibung: wird als Klartext dargestellt, falls moeglich. Fuer LaTeX wird `\verb++' ausgegeben, bei allen anderen Formaten erfolgt die gleiche Ausgabe wie bei (!T)...(!t). Beispiel: (!V)Klartext(!v) Siehe auch: Texthervorhebungen, !tex_verb F.20 W... ========== F.20.1 !=win ------------- Zeile nicht beim WinHelp-Format ausgeben. Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !=win Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei nicht ins WinHelp-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Siehe auch: !win, !ifdest, Formatspezifische Befehle, raw- Umgebung F.20.2 !win ------------ Zeile fuer WinHelp ausgeben Typ & Position: Kommando, Vorspann & Hauptteil Syntax: !win Beschreibung: wird nur dann ausgegeben, wenn die Quelldatei ins WinHelp-Format umgewandelt wird. wird dann 1:1 und ohne Beruecksichtigung etwaiger UDO-Kommandos ausgegeben. Diese Zeile zerteilt Absaetze genau wie alle anderen Kommandos. Beispiel: !win \par\pard Siehe auch: !=win, Formatspezifische Befehle, raw-Umgebung F.20.3 !win_background ----------------------- Hintergrundfarbe fuer WinHelp setzen Typ & Position: Kommando, Vorspann Syntax: !win_background [] Beschreibung: Mit diesem Kommando koennen Sie Hintergrundfarbe der Hilfedatei festlegen. Es stehen folgende Farben zur Verfuegung: red, green, blue, cyan, magenta, yellow, grey und white. Gleichzeitig passt UDO die Textfarbe an. Man sollte moeglichst nur Weiss und Grau als Hintergrundfarben verwenden; alle anderen Farben sind furchtbar haesslich. Beispiel: !win_backgound grey F.20.4 !win_charwidth ---------------------- Zeichenbreit einstellen (nur WinHelp und QuickView) Typ & Position: Schalter, Vorspann & Hauptteil Syntax: !win_charwidth Beschreibung: UDO benutzt zur Ausrichtung der xlist-Umgebungen und der Tabellen einen Wert fuer die Berechnung der Einrueckungen und Zellenbreiten. Dieser Wert ist so ausgelegt, dass auch nichtproportionale fette Grossschrift noch richtig formatiert wird. Bei normaler Schrift kann es jedoch sein, dass die Zeichen zu weit eingerueckt werden oder das Tabellenzellen zu breit erscheinen. Mit diesem Schalter koennen sie den Berechnungswert anpassen. Standardmaessig benutzt UDO den Wert 150. Beispiel: !win_charwidth 100 Siehe auch: Tabellen, Listen F.20.5 !win_high_compression ----------------------------- WinHelp-Datei komprimieren (hohe Kompressionsrate) Typ & Position: Schalter, Vorspann Syntax: !win_high_compression Beschreibung: Der Einsatz dieses Schalters fuehrt bei der spaeteren Umwandlung durch den Microsoft-Helpcompiler zur Komprimierung der Hilfedatei mit einer Kompressionsrate von ca. 50%. Die Komprimierung dauert relativ lange. Fast gleich gute Ergebnisse bei kuerzerer Umwandlungsdauer erzielt man mit dem Schalter !win_medium_compression. Siehe auch: !win_medium_compression F.20.6 !win_inline_bitmaps --------------------------- Typ & Position: Schalter, Vorspann Syntax: !win_inline_bitmaps Beschreibung: Wenn Sie diesen Schalter im Vorspann verwenden, so benutzt UDO zur Einbindung der Bilder den RTF-Befehl `\bmcwd' anstelle des Befehls `\bmc'. Daraufhin speichert der Microsoft Helpcompiler die Bilder in einem anderen Format in der WinHelp-Datei, wodurch Bilder nicht mehr verzerrt dargestellt werden. Allerdings duerfen Bilder dann nicht groesser als 64 KB sein. Naehere Informationen ueber den Unterschied zwischen den beiden RTF-Befehlen findet man in der Dokumentation zum HCP. Siehe auch: !image F.20.7 !win_medium_compression ------------------------------- WinHelp-Datei komprimieren (mittlere Kompressionsrate) Typ & Position: Schalter, Vorspann Syntax: !win_medium_compression Beschreibung: Der Einsatz dieses Schalters fuehrt bei der spaeteren Umwandlung durch den Microsoft-Helpcompiler zur Komprimierung der Hilfedatei mit einer Kompressionsrate von ca. 40%. Bessere Ergebnisse bei allerdings laengerer Umwandlungsdauer erzielt man mit dem Schalter !win_high_compression. Siehe auch: !win_high_compression F.20.8 !win_propfont --------------------- Proportional-Font fuer WinHelp setzen Typ & Position: Kommando, Vorspann Syntax: !win_propfont Beschreibung: Mit diesem Kommando kann man den Font setzen, der zur Darstellung des Hilfstextes einer Windows-Hilfe-Datei benutzt werden soll. Als Default verwendet UDO den Font "Times New Roman". Beispiel: !win_propfont Arial F.21 X... ========== F.21.1 (!xlink ...) -------------------- Verweis auf externe Daten Typ & Position: Platzhalter, Hauptteil Syntax: (!xlink [] []) Beschreibung: Dient zum Erzeugen von Verweisen auf externe Dokumente. Im Unterschied zu (!link ...) werden Son- derzeichen innerhalb nicht umgewandelt. Im Beispiel wuerde bei einem HTML-File ein Querverweis auf die Seite der Deutschen Telekom erzeugt. kann auch leer sein, dann wird fuer der Inhalt von ausgegeben. Beispiel: (!xlink [Deutsche Telekom] [http://www.dtag.de]) Siehe auch: (!link ...), (!plink ...), !no_xlinks, Querverweise F.22 *... ========== F.22.1 !~ ---------- Tilde Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: !~ Beschreibung: Diese Zeichenfolge wird nach der Umwandlung als Tilde dargestellt. Beachten Sie, dass eine einzige Tilde als festes Leerzeichen interpretiert wird. Beispiel: Aus !~ wird ~ Siehe auch: ~, Feste Leerzeichen F.22.2 !- ---------- Marke fuer eine moegliche Trennstelle Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: !- Beschreibung: Hiermit koennen Sie Stellen in einem Wort markieren, an denen UDO das Wort trennen darf. Das Beispiel zeigt, wie man die Stellen des Wortes "Silbentrennung" markieren koennte. Beispiel: Sil!-ben!-tren!-nung Siehe auch: !hyphen F.22.3 !! ---------- Typ & Position: Sonderzeichen, Hauptteil Syntax: !! Beschreibung: Ein doppeltes Ausrufungszeichen trennt die Zellen einer Tabellenzeile sowie Indexeintraege. Beispiel: !index Ebene 1 !! Ebene 2 Siehe auch: Tabellen, Indizes F.22.4 !.. ----------- Typographische drei Punkte ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: !.. Beschreibung: Ein Ausrufungszeichen, gefolgt von zwei Punkten, wandelt UDO in typographische drei Punkte um, sofern das Ausgabeformat diese anzeigen kann. Ansonsten wandelt UDO !.. in drei normale Punkte um. Beispiel: Aus !.. wird ... F.22.5 ~ --------- Festes Leerzeichen Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: ~ Beschreibung: Die Tilde gilt in der UDO-Syntax als festes Leerzeichen. Woerter, zwischen denen ein festes Leerzeichen steht, werden nicht durch einen Zeilenum- bruch voneinander getrennt. Beim Blocksatz werden an der Einsatzstelle auch keine Leerzeichen eingefuegt. Beispiel: 42~DM, Dr.~Sommer Siehe auch: !~, Feste Leerzeichen F.22.6 "" ---------- Typographisches Anfuehrungszeichen ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: "" Beschreibung: Zwei aufeinanderfolgende Anfuehrungszeichen werden von UDO in die typographischen Anfuehrungszeichen der benutzten Sprache umgewandelt, sofern das Ausgabefor- mat diese anzeigen kann. Andernfalls werden doppelte Anfuehrungszeichen durch einfache ersetzt. Beispiel: "Typographische Anfuehrungszeichen" Siehe auch: ("") F.22.7 ("") ------------ Zwei Anfuehrungszeichen ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: ("") Beschreibung: Wollen Sie zwei Anfuehrungszeichen ausgeben, so muessen Sie diese klammern. Andernfalls wuerde UDO diese in typographische Anfuehrungszeichen umwandeln. Siehe auch: "" F.22.8 ('') ------------ Zwei Apostophe ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: ('') Beschreibung: Wollen Sie zwei Apostrophe ausgeben, so muessen Sie diese klammern. Andernfalls wuerde UDO diese in typo- graphische Apostrophe umwandeln. Siehe auch: '' F.22.9 (--) ------------ Zwei Minuszeichen ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: (--) Beschreibung: Wenn Sie zwei Minuszeichen ausgegeben wollen, so muessen Sie diese Klammern. Andernfalls wuerde UDO diese beiden Minuszeichen in einen kurzen Gedankenstrich umwandeln. Beispiel: (--)outfile Siehe auch: --, (---), Gedankenstriche F.22.10 (---) -------------- Drei Minuszeichen ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: (---) Beschreibung: Wenn Sie drei Minuszeichen ausgegeben wollen, so muessen Sie diese Klammern. Andernfalls wuerde UDO diese drei Minuszeichen in einen langen Gedankenstrich umwandeln. Siehe auch: ---, (--), Gedankenstriche F.22.11 '' ----------- Typographisches Apostroph ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: '' Beschreibung: Zwei aufeinanderfolgende Apopstrophe werden von UDO in die typographischen Apostrophe der benutzten Spra- che umgewandelt, sofern das Ausgabeformat diese anzeigen kann. Andernfalls werden doppelte Apostrophe durch einfache ersetzt. Beispiel: `Typographische Apostrophe' Siehe auch: ('') F.22.12 -- ----------- Kurzen Gedankenstrich ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: -- Beschreibung: Zwei aufeinanderfolgende Minuszeichen werden von UDO in einen kurzen Gedankenstrich umgewandelt, sofern das Ausgabeformat Gedankenstriche anzeigen kann. Andernfalls werden die beiden Minuszeichen durch eines ersetzt. Beispiel: Ein kurzer - aehm, achso - Gedankenstrich Siehe auch: (--), Gedankenstriche F.22.13 --- ------------ Langen Gedankenstrich ausgeben Typ & Position: Sonderzeichen, Vorspann & Hauptteil Syntax: --- Beschreibung: Drei aufeinanderfolgende Minuszeichen werden von UDO in einen langen Gedankenstrich umgewandelt, sofern das Ausgabeformat Gedankenstriche anzeigen kann. Andernfalls werden die beiden Minuszeichen durch eines ersetzt. Beispiel: Ein langer - aehm, achso - Gedankenstrich Siehe auch: (---), Gedankenstriche ====================================================================== Anhang UDO6 ====================================================================== Dieser Text wurde erzeugt mit UDO Release 6 Patchlevel 0 HP-UX Copyright (c) 1995, 1996, 1997 by Dirk Hagedorn Asmecke 1 D-59846 Sundern MausNet: Dirk Hagedorn@MK2 America Online: DirkHage@aol.com UDO ist ein Programm, welches Textdateien, die im Universal Document Format erstellt wurden, in das ASCII-, ST-Guide-, LaTeX-, Rich Text-, Pure-C-Help-, Manualpage-, HTML-, WinHelp-, Texinfo-, Linuxdoc-SGML-, LyX-, Apple-QuickView- und Turbo-Vision-Help-Format umwandeln kann. Weitere Informationen sowie die aktuellen Versionen findet man im World Wide Web unter http://members.aol.com/UDODH/index.htm